python3+selenium實(shí)現(xiàn)qq郵箱登陸并發(fā)送郵件功能
本文實(shí)例為大家分享了python3實(shí)現(xiàn)qq郵箱登陸并發(fā)送郵件功能的具體代碼,供大家參考,具體內(nèi)容如下
基于selenium,使用chrome瀏覽器,完成qq郵箱登陸并發(fā)送發(fā)郵件功能,暫時(shí)未封裝。qq郵箱和126郵箱登陸還是有一些區(qū)別的。
#encoding=utf-8
from selenium import webdriver
import time
#啟動(dòng)chrome瀏覽器
driver = webdriver.Chrome()
#進(jìn)入qq郵箱登陸首頁
driver.get("https://mail.qq.com/")
time.sleep(1)
#窗口最大化
driver.maximize_window()
#切換到登陸frame(!!!!!!!!必須先切換!!!!!!!!)
driver.switch_to.frame('login_frame')
driver.find_element_by_xpath("http://*[@id='switcher_plogin']").click()
time.sleep(3)
#########登陸
#輸入用戶名
username = driver.find_element_by_xpath("http://*[@id='u']")
username.clear()
#將xxxxxxxxxx換成qq郵箱賬戶
username.send_keys('xxxxxxxxxx')
#輸入密碼:將1111111111替換為自己的郵箱密碼
driver.find_element_by_id('p').send_keys('1111111111')
#點(diǎn)擊登陸
driver.find_element_by_id('login_button').click()
time.sleep(10)
#斷言登陸成功
assert '退出' in driver.page_source
#########寫信
#單擊寫信按鈕
driver.find_element_by_link_text("寫信").click()
time.sleep(2)
#切換到mainFrame
driver.switch_to.frame('mainFrame')
time.sleep(2)
#輸入收件人
driver.find_element_by_xpath("http://*[@id='toAreaCtrl']/div[2]/input").send_keys('123456789@qq.com')
#輸入主題
driver.find_element_by_id('subject').send_keys('test')
#輸入正文
o=driver.find_elements_by_class_name("qmEditorIfrmEditArea")
o[0].click() #!!!!!!!must click!!!!!!!
o[0].send_keys("abc")
#點(diǎn)擊發(fā)送按鈕
driver.find_element_by_xpath("http://*[@id='toolbar']/div/a[1]").click()
time.sleep(3)
##driver.find_element_by_xpath('//a[@name="sendbtn" and @tabindex="9"]').click()
time.sleep(3)
#斷言發(fā)送成功
assert u"再寫一封" in driver.page_source
#關(guān)閉瀏覽器
driver.quit()
小編再為大家分享一段代碼:python+selenium自動(dòng)登錄QQ郵箱發(fā)送郵件
#coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
driver = webdriver.Chrome()
url =("https://mail.qq.com/")
name=("874**5483")
key = ("Zly1****612X")
out_name=("65750**8@qq.com")
#
#打開瀏覽器
driver.get(url)
driver.implicitly_wait(10)
#最大化窗口
driver.maximize_window()
#切換iframe
driver.switch_to.frame("login_frame")
# #定位至賬號(hào)密碼登錄
# driver.find_element_by_xpath('//*[@id="switcher_plogin"]').click()
# #賬號(hào),密碼輸入
# driver.find_element_by_xpath('//*[@id="u"]').send_keys(name)
# driver.find_element_by_xpath('//*[@id="p"]').send_keys(key)
# #點(diǎn)擊登錄
# driver.find_element_by_xpath('//*[@id="login_button"]').click()
#點(diǎn)擊頭像登錄
driver.find_element_by_xpath('//*[@id="img_out_874335483"]').click()
time.sleep(5)
#點(diǎn)擊寫信
driver.find_element_by_xpath('//*[@id="composebtn"]').click()
time.sleep(3)
#切換iframe至寫信
driver.switch_to.frame("mainFrame")
#driver.switch_to.frame(driver.find_element_by_id('mainFrame'))
time.sleep(3)
#添加收件人
driver.find_element_by_xpath('//*[@id="toAreaCtrl"]/div[2]/input').send_keys(out_name)
#添加主題
driver.find_element_by_xpath('//*[@id="subject"]').send_keys("TestCase1")
#退出當(dāng)前編輯Iframe
driver.switch_to.default_content()
#切換Iframe至編輯正文
driver.switch_to.frame("mainFrame")
#Body_frame=driver.find_element_by_xpath('//iframe[@scrolling="auto"]')
Body_frame=driver.find_element_by_class_name("qmEditorIfrmEditArea")
driver.switch_to.frame(Body_frame)
#添加正文
driver.find_element_by_xpath('/html/body').send_keys("I LOVE Python")
time.sleep(3)
#退回大Frame再點(diǎn)擊發(fā)送
driver.switch_to.parent_frame()
driver.find_element_by_xpath('//*[@id="toolbar"]/div/a[1]').click()
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Python實(shí)現(xiàn)給qq郵箱發(fā)送郵件的方法
- Python使用QQ郵箱發(fā)送Email的方法實(shí)例
- python利用smtplib實(shí)現(xiàn)QQ郵箱發(fā)送郵件
- python3實(shí)現(xiàn)163郵箱SMTP發(fā)送郵件
- python3使用騰訊企業(yè)郵箱發(fā)送郵件的實(shí)例
- 淺談Python用QQ郵箱發(fā)送郵件時(shí)授權(quán)碼的問題
- python實(shí)現(xiàn)QQ郵箱/163郵箱的郵件發(fā)送
- python使用QQ郵箱實(shí)現(xiàn)自動(dòng)發(fā)送郵件
- python實(shí)現(xiàn)自動(dòng)獲取IP并發(fā)送到郵箱
- python實(shí)現(xiàn)郵箱發(fā)送信息
相關(guān)文章
利用tkinter實(shí)現(xiàn)下拉框聯(lián)動(dòng)
這篇文章主要介紹了利用tkinter實(shí)現(xiàn)下拉框聯(lián)動(dòng)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01
calendar在python3時(shí)間中常用函數(shù)舉例詳解
這篇文章主要介紹了calendar在python3時(shí)間中常用函數(shù)的相關(guān)文章,對(duì)此知識(shí)點(diǎn)有興趣的朋友們可以學(xué)習(xí)下。2020-11-11
python轉(zhuǎn)換pkl模型文件為txt文件問題
這篇文章主要介紹了python轉(zhuǎn)換pkl模型文件為txt文件問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06
Pandas中DataFrame交換列順序的方法實(shí)現(xiàn)
這篇文章主要介紹了Pandas中DataFrame交換列順序的方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
從Python的源碼來解析Python下的freeblock
這篇文章主要介紹了從Python的源碼來解析Python下的freeblock,包括內(nèi)存空間分配等知識(shí),需要的朋友可以參考下2015-05-05
Django-celery-beat動(dòng)態(tài)添加周期性任務(wù)實(shí)現(xiàn)過程解析
這篇文章主要介紹了Django-celery-beat動(dòng)態(tài)添加周期性任務(wù)實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11

