最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python+selenium實現(xiàn)QQ郵箱自動發(fā)送功能

 更新時間:2019年01月23日 10:09:19   作者:知否,知否  
這篇文章主要為大家詳細(xì)介紹了python+selenium實現(xiàn)QQ郵箱自動發(fā)送功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

python實現(xiàn)從登錄到自動發(fā)送qq郵件,供大家參考,具體內(nèi)容如下

qq郵箱登錄注意問題

賬戶密碼登錄框是寫在一個iframe上的,所以我們要先進(jìn)入iframe中才能定位到下面的兩個輸入框和登錄按鈕。從下圖我們可以看到iframe=login_frame,我們可以是用driver.switch.to_frame(“l(fā)ogin_frame”)進(jìn)入iframe中。接下來的兩個輸入框和登錄按鈕都有id屬性,我們只需要用driver.find_element_by_id(“xxx”)就可以定位到元素。
記得退出iframe,不然定位后面的所有元素都會失?。ㄇ杏洠顺鰅frame的話我們可以寫driver.switch_to_default_content()來實現(xiàn)(個人發(fā)現(xiàn)to后面用“.”還是“_”符號,都可以將后面顯示出來)。大家可以嘗試下,把這句話省略,接著定位下面的元素。

主頁面注意事項

主頁面上左上角的“寫信”按鈕,你右擊是不會顯示查看元素的,第一種方法,我們首先在頁面其他地方右擊,接著選中查看元素,然后用查看器左邊的那個鼠標(biāo)按鈕去點擊“寫信”按鈕。就可以查看到。第二種方法,直接根據(jù)“寫信”兩個字去定位元素。我們可以這樣driver.find_element_by_link_text(“寫信”)

寫信頁面注意事項

寫信頁面都寫在iframe里面,所以要進(jìn)入iframe中,然后定位收件人的輸入框,我們可以從下面的頁面代碼中看到class的值有很多地方都用到(不是唯一),所有我們相對路徑的方法,driver.find_element_by_xpath("http://*[@id=“toAreaCtrl”]//div[2]/input")。這樣就可以解決了。

文下面的文本框注意四點,第一點,文本框在一個iframe中;第二點,文本框沒有任何的屬性值,所以我們可以使用HTML標(biāo)簽名定位,driver.find_element_by_tag_name(“body”);第三點文本框需要先點擊(click),在編寫(send_keys),如果沒有先點擊在編寫,那么你send_keys(“xxxx”)內(nèi)容會放在主題后面的文本框中。第四點,退出iframe,然后再進(jìn)入iframe=“mainFrame”,因為退出的話就是所有的iframe都退出。

完整腳本

from selenium import webdriver
import unittest,time,traceback
from selenium.common.exceptions import TimeoutException,NoSuchElementException


class TestDemo(unittest.TestCase):
 def setUp(self):
 self.driver=webdriver.Firefox(executable_path='f:\\geckodriver')


 def test_sendqqemail(self):
 try:
  url = 'https://mail.qq.com/'
  self.driver.get(url)
  self.driver.maximize_window()
  self.driver.switch_to_frame("login_frame")
  self.driver.find_element_by_id("u").send_keys("用戶名")
  self.driver.find_element_by_id("p").send_keys("密碼")
  self.driver.find_element_by_id("login_button").click()
  time.sleep(5)
  self.driver.switch_to.default_content() #退出iframe,如果沒這句話后面的元素定位都會出錯
  self.driver.find_element_by_id('composebtn').click()
  #寫信模塊都在iframe=mainFrame頁面上
  self.driver.switch_to_frame("mainFrame")
  time.sleep(3)
  self.driver.find_element_by_xpath("http://*[@id='toAreaCtrl']/div[2]/input").send_keys("收件人")
  #定位主題
  self.driver.find_element_by_xpath('//input[@id="subject"]').send_keys("主題")
  #正文編寫iframe中
  self.driver.switch_to_frame(self.driver.find_element_by_class_name("qmEditorIfrmEditArea"))
  #self.driver.find_element_by_xpath("/html/body").send_keys('你好,再見')
  #定位正文
  content=self.driver.find_element_by_tag_name("body")
  #必須click(),不然會寫到主題里面
  content.click()
  content.send_keys("正文內(nèi)容")
  time.sleep(3)
  self.driver.switch_to.default_content()
  self.driver.switch_to_frame("mainFrame")
  #定位發(fā)送按鈕
  self.driver.find_element_by_xpath('//a[.="發(fā)送"]').click()
 except TimeoutException:
  print("顯示等待頁面元素超時")
 except NoSuchElementException:
  print("尋找頁面元素不存在",traceback.print_exc())
 except Exception:
  print(traceback.print_exc())

 def tearDown(self):
 self.driver.quit()


 if __name__=="__main__":
 unittest.main()

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python 圖像的離散傅立葉變換實例

    python 圖像的離散傅立葉變換實例

    今天小編就為大家分享一篇python 圖像的離散傅立葉變換實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • python Celery定時任務(wù)的示例

    python Celery定時任務(wù)的示例

    這篇文章主要介紹了python Celery定時任務(wù)的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • 詳解Python常用標(biāo)準(zhǔn)庫之時間模塊time和datetime

    詳解Python常用標(biāo)準(zhǔn)庫之時間模塊time和datetime

    time和datetime是Python中常用的兩個時間模塊,本文將通過示例詳細(xì)為大家講講二者的使用方法,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)學(xué)習(xí)
    2022-05-05
  • Python+Pygame實現(xiàn)神廟逃亡游戲

    Python+Pygame實現(xiàn)神廟逃亡游戲

    這篇文章主要為大家介紹了如何利用Python和Pygame動畫制作一個神廟逃亡類似的小游戲。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動手嘗試一下
    2022-05-05
  • python繪圖時,坐標(biāo)軸負(fù)號顯示不出來的解決

    python繪圖時,坐標(biāo)軸負(fù)號顯示不出來的解決

    這篇文章主要介紹了python繪圖時,坐標(biāo)軸負(fù)號顯示不出來的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Python不要再使用while死循環(huán),定時器代替效果更佳

    Python不要再使用while死循環(huán),定時器代替效果更佳

    在python開發(fā)的過程中,經(jīng)常見到小伙伴直接使用while True的死循環(huán)+sleep的方式來保存程序的一直運(yùn)行。這種方式雖然能達(dá)到效果,但是說不定什么時候就直接崩潰了,其實使用定時器效果也不錯哦
    2023-03-03
  • 淺談Python3中strip()、lstrip()、rstrip()用法詳解

    淺談Python3中strip()、lstrip()、rstrip()用法詳解

    這篇文章主要介紹了淺談Python3中strip()、lstrip()、rstrip()用法詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • 通過LyScript實現(xiàn)從文本中讀寫ShellCode

    通過LyScript實現(xiàn)從文本中讀寫ShellCode

    LyScript 插件通過配合內(nèi)存讀寫,可實現(xiàn)對特定位置的ShellCode代碼的導(dǎo)出。本文將利用這一特性實現(xiàn)從文本中讀寫ShellCode,感興趣的可以了解一下
    2022-08-08
  • python自動生成證件號的方法示例

    python自動生成證件號的方法示例

    這篇文章主要給大家介紹了關(guān)于python自動生成證件號的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 利用Python+OpenCV三步去除水印

    利用Python+OpenCV三步去除水印

    去水印需要用到的庫:cv2、numpy,cv2是基于OpenCV的圖像處理庫,可以對圖像進(jìn)行腐蝕,膨脹等操作.numpy這是一個強(qiáng)大的處理矩陣和維度運(yùn)算的庫,,需要的朋友可以參考下
    2021-05-05

最新評論

江源县| 绥化市| 酒泉市| 新乐市| 井研县| 怀来县| 洛阳市| 镇康县| 论坛| 东山县| 新晃| 浑源县| 龙海市| 高台县| 喜德县| 锦屏县| 旬邑县| 平罗县| 舟曲县| 靖边县| 河西区| 商南县| 平陆县| 普兰店市| 勃利县| 荣成市| 集贤县| 金寨县| 大同市| 潞西市| 虹口区| 禄劝| 左贡县| 连云港市| 嘉定区| 姚安县| 齐齐哈尔市| 东至县| 平昌县| 山阴县| 泸溪县|