三翩迈、瀏覽器自動化測試工具selenium

一耳鸯、selenium

selenium+phatomjs和selenium+chrome

selenium:是一種用于web程序測試的工具竞川,selenium測試的代碼可以直接運行在瀏覽器中,就像真正的用戶操作一樣登淘。

在寫python爬蟲的時候,主要是用selenium的webdriver 來驅(qū)動瀏覽器進行相關(guān)的操作

安裝:pip install selenium

selenium中元素查找:

find_element_by_id()

find_elements_by_name()

find_elements_by_xpath()

find_elements_by_tag_name()

find_elements_by_class_name()

find_elements_by_css_selector()

find_elements_by_link_text()

事件

click() 點擊

send_keys()

switch_to_alert()

chromedriver:谷歌瀏覽器驅(qū)動

加載方法如下:

法一:driver = webdriver.Chrome(r'/Users/fanjianbo/Desktop/chromedriver')

法二:把chromedriver的目錄配成環(huán)境變量路徑箫老,然后:driver = webdriver.Chrome()

【注意】chromedriver的版本要和chrome瀏覽器相對應,不然很多功能不能用

下載操作谷歌瀏覽器驅(qū)動的頁面:http://chromedriver.storage.googleapis.com/index.html 或者 http://npm.taobao.org/mirrors/chromedriver/2.37/

谷歌驅(qū)動和谷歌瀏覽器版本之間的映射表:http://blog.csdn.net/huilan_same/article/details/51896672

phantomjs:無界面瀏覽器

加載方法如下:

    法一:driver = webdriver.PhatomJS("C:\Users\ZBLi\Desktop\1706\day04\ziliao\phantomjs-2.1.1-windows\bin\phantomjs.exe")

    法二:把phantomjs拷貝到c盤下黔州,并把bin目錄配置成環(huán)境變量耍鬓,然后driver = webdriver.PhatomJS()

【注意】phantomjs目前已經(jīng)不再更新

下載地址:http://phantomjs.org/download.html

二、使用

  • 使用chrome瀏覽器
# 導入selenium工具
from selenium import webdriver

# 給瀏覽器加入無頭瀏覽器流妻,使得調(diào)取瀏覽器的時候不需要打開牲蜀,只需要調(diào)用其內(nèi)核即可
opt = webdriver.ChromeOptions()
opt.add_argument("--headless")
# 根據(jù)驅(qū)動所在的路徑創(chuàng)建出一個瀏覽器對象
driver = webdriver.Chrome()

#driver對象可以通過操作瀏覽器
driver.get("http://www.baidu.com/")

# 獲取頁面上的某個標簽元素
btn = driver.find_element_by_link_text("新聞")
# print(btn)

# 點擊方法 .click()
btn.click()

# 找到輸入框,寫入內(nèi)容方法  .send_keys()

input = driver.find_element_by_id("kw")
input.send_keys("贛南王昱珩")
driver.find_element_by_id("su").click()

# 對于爬蟲來說,更關(guān)注做了某些操作之后得到的網(wǎng)頁源碼是什么
html = driver.page_source    # 獲取頁面源碼
with open("baidu.html",'w',encoding='utf-8') as fp:
     fp.write(html)

driver.quit()
  • 使用PhantomJS無頭操作
from selenium import webdriver

driver =webdriver.PhantomJS()

driver.get("http://www.baidu.com/")
# print(driver.page_source)

# 保存截屏方法 .save_screenshot()
driver.save_screenshot("./baidu.jpg")
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市绅这,隨后出現(xiàn)的幾起案子涣达,更是在濱河造成了極大的恐慌,老刑警劉巖证薇,帶你破解...
    沈念sama閱讀 210,835評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件度苔,死亡現(xiàn)場離奇詭異,居然都是意外死亡浑度,警方通過查閱死者的電腦和手機寇窑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,900評論 2 383
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來箩张,“玉大人甩骏,你說我怎么就攤上這事∠瓤叮” “怎么了饮笛?”我有些...
    開封第一講書人閱讀 156,481評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長论熙。 經(jīng)常有香客問我福青,道長,這世上最難降的妖魔是什么脓诡? 我笑而不...
    開封第一講書人閱讀 56,303評論 1 282
  • 正文 為了忘掉前任素跺,我火速辦了婚禮,結(jié)果婚禮上誉券,老公的妹妹穿的比我還像新娘指厌。我一直安慰自己,他們只是感情好踊跟,可當我...
    茶點故事閱讀 65,375評論 5 384
  • 文/花漫 我一把揭開白布踩验。 她就那樣靜靜地躺著鸥诽,像睡著了一般。 火紅的嫁衣襯著肌膚如雪箕憾。 梳的紋絲不亂的頭發(fā)上牡借,一...
    開封第一講書人閱讀 49,729評論 1 289
  • 那天,我揣著相機與錄音袭异,去河邊找鬼钠龙。 笑死,一個胖子當著我的面吹牛御铃,可吹牛的內(nèi)容都是我干的碴里。 我是一名探鬼主播,決...
    沈念sama閱讀 38,877評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼上真,長吁一口氣:“原來是場噩夢啊……” “哼咬腋!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起睡互,我...
    開封第一講書人閱讀 37,633評論 0 266
  • 序言:老撾萬榮一對情侶失蹤根竿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后就珠,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體寇壳,經(jīng)...
    沈念sama閱讀 44,088評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,443評論 2 326
  • 正文 我和宋清朗相戀三年妻怎,在試婚紗的時候發(fā)現(xiàn)自己被綠了九巡。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,563評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡蹂季,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出疏日,到底是詐尸還是另有隱情偿洁,我是刑警寧澤,帶...
    沈念sama閱讀 34,251評論 4 328
  • 正文 年R本政府宣布沟优,位于F島的核電站涕滋,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏挠阁。R本人自食惡果不足惜宾肺,卻給世界環(huán)境...
    茶點故事閱讀 39,827評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望侵俗。 院中可真熱鬧锨用,春花似錦、人聲如沸隘谣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,712評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至掌栅,卻和暖如春秩仆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背猾封。 一陣腳步聲響...
    開封第一講書人閱讀 31,943評論 1 264
  • 我被黑心中介騙來泰國打工澄耍, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人晌缘。 一個月前我還...
    沈念sama閱讀 46,240評論 2 360
  • 正文 我出身青樓齐莲,卻偏偏與公主長得像,于是被迫代替她去往敵國和親枚钓。 傳聞我的和親對象是個殘疾皇子铅搓,可洞房花燭夜當晚...
    茶點故事閱讀 43,435評論 2 348

推薦閱讀更多精彩內(nèi)容