python3+selenium實現(xiàn)qq郵箱登陸并發(fā)送郵件功能
更新時間:2019年01月23日 10:20:02 作者:小小小小人ksh
這篇文章主要為大家詳細介紹了python3+selenium實現(xiàn)qq郵箱登陸,并發(fā)送郵件功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了python3實現(xiàn)qq郵箱登陸并發(fā)送郵件功能的具體代碼,供大家參考,具體內容如下
基于selenium,使用chrome瀏覽器,完成qq郵箱登陸并發(fā)送發(fā)郵件功能,暫時未封裝。qq郵箱和126郵箱登陸還是有一些區(qū)別的。
#encoding=utf-8 from selenium import webdriver import time #啟動chrome瀏覽器 driver = webdriver.Chrome() #進入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') #點擊登陸 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") #點擊發(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 #關閉瀏覽器 driver.quit()
小編再為大家分享一段代碼:python+selenium自動登錄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") # #定位至賬號密碼登錄 # driver.find_element_by_xpath('//*[@id="switcher_plogin"]').click() # #賬號,密碼輸入 # driver.find_element_by_xpath('//*[@id="u"]').send_keys(name) # driver.find_element_by_xpath('//*[@id="p"]').send_keys(key) # #點擊登錄 # driver.find_element_by_xpath('//*[@id="login_button"]').click() #點擊頭像登錄 driver.find_element_by_xpath('//*[@id="img_out_874335483"]').click() time.sleep(5) #點擊寫信 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") #退出當前編輯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再點擊發(fā)送 driver.switch_to.parent_frame() driver.find_element_by_xpath('//*[@id="toolbar"]/div/a[1]').click()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Python實現(xiàn)給qq郵箱發(fā)送郵件的方法
- Python使用QQ郵箱發(fā)送Email的方法實例
- python利用smtplib實現(xiàn)QQ郵箱發(fā)送郵件
- python3實現(xiàn)163郵箱SMTP發(fā)送郵件
- python3使用騰訊企業(yè)郵箱發(fā)送郵件的實例
- 淺談Python用QQ郵箱發(fā)送郵件時授權碼的問題
- python實現(xiàn)QQ郵箱/163郵箱的郵件發(fā)送
- python使用QQ郵箱實現(xiàn)自動發(fā)送郵件
- python實現(xiàn)自動獲取IP并發(fā)送到郵箱
- python實現(xiàn)郵箱發(fā)送信息
相關文章
calendar在python3時間中常用函數(shù)舉例詳解
這篇文章主要介紹了calendar在python3時間中常用函數(shù)的相關文章,對此知識點有興趣的朋友們可以學習下。2020-11-11Pandas中DataFrame交換列順序的方法實現(xiàn)
這篇文章主要介紹了Pandas中DataFrame交換列順序的方法實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12從Python的源碼來解析Python下的freeblock
這篇文章主要介紹了從Python的源碼來解析Python下的freeblock,包括內存空間分配等知識,需要的朋友可以參考下2015-05-05Django-celery-beat動態(tài)添加周期性任務實現(xiàn)過程解析
這篇文章主要介紹了Django-celery-beat動態(tài)添加周期性任務實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-11-11