利用selenium登陆163邮箱并发送邮件
生活随笔
收集整理的這篇文章主要介紹了
利用selenium登陆163邮箱并发送邮件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目的:
測試selenium發送郵件
代碼:
#!/usr/bin/env python
#-*- coding:utf-8 -*-
"""
利用163郵箱發郵件
"""
import time
from selenium import webdriver
from getpass import getpass
def loging(user, passwd, reciver, subject, content):
driver = webdriver.Firefox()
driver.get("https://mail.163.com/")
driver.implicitly_wait(30)
# 進入登陸iframe框架中
driver.switch_to.frame(3) # 這個不知道咋就對了, 無語了。。。
driver.find_element_by_name('email').clear()
driver.find_element_by_name('email').send_keys(user)
driver.find_element_by_name("password").clear()
driver.find_element_by_name("password").send_keys(passwd)
driver.find_element_by_id("dologin").click()
driver.switch_to.default_content() # 退出剛剛進入的iframe框架
# 點擊寫信
time.sleep(10)
driver.find_elements_by_css_selector("div nav div ul li")[1].click() # 寫信
time.sleep(20)
driver.find_element_by_class_name("nui-editableAddr-ipt").send_keys(reciver)
driver.find_elements_by_css_selector("div section header div div div div input")[2].send_keys(subject)
# 信的正文內容在iframe中
driver.switch_to.frame(driver.find_element_by_class_name("APP-editor-iframe"))
driver.find_element_by_css_selector("body").send_keys(content)
driver.switch_to.default_content()
# 郵件發送
driver.find_element_by_css_selector("div > header > div > div > div > span").click()
# 關閉瀏覽器
time.sleep(4)
driver.quit()
if __name__ == "__main__":
user = input("user: ")
passwd = getpass()
reciver = input("接收者: ")
subject = input("主題: ")
content = input("內容: ")
loging(user, passwd, reciver, subject, content)
代碼說明:
1.基本的selenium知識
2.元素定位
3. 163郵箱的密碼輸入內容在iframe中,需要了解iframe的含義,以及如何進入iframe和退出
總結
以上是生活随笔為你收集整理的利用selenium登陆163邮箱并发送邮件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: nodejs安装
- 下一篇: java核心技术笔记