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

selenium 與 chrome 進(jìn)行qq登錄并發(fā)郵件操作實(shí)例詳解

 更新時(shí)間:2017年04月06日 10:15:16   投稿:lqh  
這篇文章主要介紹了selenium 與 chrome 進(jìn)行qq登錄并發(fā)郵件操作實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下

selenium 與 chrome 進(jìn)行qq登錄并發(fā)郵件操作實(shí)例詳解

出現(xiàn)的問題:

qq郵箱各種iframe需要切換,延時(shí)是必須的,通過各種方法找元素,qq郵件正文的iframe name是變化的,其他幾種方法都不行,最后居然用這樣搞定。o[0].click() , o[0].send_keys("abc"),還得再研究研究?。?!

備注:已經(jīng)在機(jī)器上登錄過QQ客戶端,XXXX是發(fā)送QQ號(hào),YYYYY是接受QQ號(hào)

from selenium import webdriver
import time
import sys


if 1: 
  driver=webdriver.Chrome()
  driver.get('http://www.qq.com')
  qq_handle = driver.current_window_handle
  driver.find_element_by_xpath('''//*[@id="loginGrayLayout"]''').click()
  time.sleep(1)
  driver.switch_to.frame('login_frame')
  driver.find_element_by_xpath('''//*[@id="img_out_XXXXX"]''').click()
  time.sleep(1)
  driver.refresh()
  driver.find_element_by_xpath('''//*[@id="mailGrayIconLogin"]/a''').click()
  all_handles = driver.window_handles
  time.sleep(1)
  driver.switch_to.window(all_handles[1])
  driver.find_elements_by_css_selector('#composebtn')[0].click() #

  time.sleep(1)
  driver.switch_to.frame('mainFrame')
  driver.find_element_by_xpath('''//*[@id="toAreaCtrl"]/div[2]/input''').send_keys("XXXXX@vip.qq.com")
  driver.find_element_by_xpath('''//*[@id="subject"]''').send_keys("Test Mail Subject")

  o=driver.find_elements_by_class_name("qmEditorIfrmEditArea")
  o[0].click()
  o[0].send_keys("Hello world!") 
  driver.find_element_by_xpath('''//*[@id="toolbar"]/div/a[1]''').click()

  sys.exit(0)

driver=webdriver.Chrome()
driver.get('http://mail.qq.com')
driver.switch_to.frame("login_frame")
driver.find_element_by_xpath('''//*[@id="img_out_XXXXX"]''').click()
time.sleep(1)
driver.find_elements_by_css_selector('#composebtn')[0].click()
time.sleep(1)
driver.switch_to.frame('mainFrame')
time.sleep(1)
driver.find_element_by_xpath('''//*[@id="toAreaCtrl"]/div[2]/input''').send_keys("YYYYY@vip.qq.com")
driver.find_element_by_xpath('''//*[@id="subject"]''').send_keys("Test Mail Subject")
o=driver.find_elements_by_class_name("qmEditorIfrmEditArea")
o[0].click() #must click.... shit!!!!
o[0].send_keys("abc")
driver.find_element_by_xpath('''//*[@id="toolbar"]/div/a[1]''').click()

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • 淺談Unicode與JavaScript的發(fā)展史

    淺談Unicode與JavaScript的發(fā)展史

    這篇文章主要簡(jiǎn)單介紹了Unicode與JavaScript的發(fā)展史的相關(guān)資料,需要的朋友可以參考下
    2015-01-01
  • js array數(shù)組對(duì)象操作方法匯總

    js array數(shù)組對(duì)象操作方法匯總

    這篇文章主要介紹了js array數(shù)組對(duì)象操作方法匯總,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Javascript 入門基礎(chǔ)學(xué)習(xí)

    Javascript 入門基礎(chǔ)學(xué)習(xí)

    習(xí).net已經(jīng)近2年了,最近學(xué)習(xí)Ajax時(shí)發(fā)現(xiàn)自己的很多技術(shù)功底很是欠缺,比如JavaScript。今后我會(huì)將我正在學(xué)習(xí)的也寫成筆記,有時(shí)間的話將以前的東西整理整理也傳上來。
    2010-03-03
  • 在JavaScript中typeof的用途介紹

    在JavaScript中typeof的用途介紹

    本篇文章,小編為大家介紹,在JavaScript中typeof的用途介紹。不過在閱讀本文的前提是,你現(xiàn)在應(yīng)該已經(jīng)知道原始值和對(duì)象值的區(qū)別了
    2013-04-04
  • 全選復(fù)選框JavaScript編寫小結(jié)(附代碼)

    全選復(fù)選框JavaScript編寫小結(jié)(附代碼)

    這篇文章主要介紹了全選”復(fù)選框JavaScript編寫,分別附上html和js代碼以供大家更深刻了解,具體操作步驟大家可查看下文的詳細(xì)講解,感興趣的小伙伴們可以參考一下。
    2017-08-08
  • 詳解JavaScript事件循環(huán)機(jī)制

    詳解JavaScript事件循環(huán)機(jī)制

    這篇文章給大家分享了關(guān)于JavaScript事件循環(huán)機(jī)制的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。
    2018-09-09
  • 探討JavaScript中的Rest參數(shù)和參數(shù)默認(rèn)值

    探討JavaScript中的Rest參數(shù)和參數(shù)默認(rèn)值

    這篇文章的主要介紹了JavaScript中的Rest參數(shù)和參數(shù)默認(rèn)值,內(nèi)容很充實(shí),需要了解的朋友可以參考下
    2015-07-07
  • 用js判斷頁(yè)面是否加載完成實(shí)現(xiàn)代碼

    用js判斷頁(yè)面是否加載完成實(shí)現(xiàn)代碼

    用document.onreadystatechange的方法來監(jiān)聽狀態(tài)改變, 然后用document.readyState == “complete”判斷是否加載完成,需要的朋友可以參考下
    2012-12-12
  • JavaScript reduce的基本用法詳解

    JavaScript reduce的基本用法詳解

    這篇文章主要為大家詳細(xì)介紹了JavaScript reduce的基本用法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • 基于JavaScript實(shí)現(xiàn)繼承機(jī)制之構(gòu)造函數(shù)方法對(duì)象冒充的使用詳解

    基于JavaScript實(shí)現(xiàn)繼承機(jī)制之構(gòu)造函數(shù)方法對(duì)象冒充的使用詳解

    我們知道JavaScript是面向?qū)ο蟮哪_本語(yǔ)言,那么既然是面向?qū)ο?,繼承一定是必不可少的了。JavaScript的核心是ECMAScript,JavaScript繼承機(jī)制的實(shí)現(xiàn)其實(shí)就是ECMAScript繼承機(jī)制的實(shí)現(xiàn)
    2013-05-05

最新評(píng)論

平原县| 唐山市| 吴忠市| 乌审旗| 桦南县| 肇东市| 灵丘县| 垣曲县| 安泽县| 福海县| 荔波县| 惠来县| 福贡县| 抚州市| 张家口市| 义乌市| 广宗县| 白水县| 汝城县| 兴城市| 叙永县| 木兰县| 安多县| 濉溪县| 互助| 菏泽市| 温泉县| 莲花县| 宜宾市| 阿合奇县| 新丰县| 鲜城| 定南县| 罗甸县| 兴城市| 南平市| 阆中市| 白银市| 郓城县| 雅安市| 谢通门县|