Python Selenium 基本配置

  不知道你們學習python的目的有哪些?Web開發  自動化運維  大數據分析  網絡爬蟲  人工智能  機器學習  ?html

  最近對網絡爬蟲比較感興趣,爲何呢?懶人分不少種.....python

    1. 懶惰成性什麼都不幹的web

    2.  趁人不注意就偷懶打盹的chrome

    3. 被逼無奈想着投機取巧完成任務的編程

    很不幸,學爬蟲的初衷確是爲了第三種,由於工做上有一些問題須要處理,可是讓我一個個的動手完成真的比較無聊,因此想到了爬蟲。就如博客園說的,代碼改變世界。固然爬蟲也分不少類型,我說的主要是經過自動化selenium模擬手動操做,完成重複有重複的工做嘍。windows

  selenium做爲目前市面上比較火的WEBGUI自動化測試。selenium 2針對各個瀏覽器而開發的,它取代了嵌入到被測Web應用中的 JavaScript。與瀏覽器的緊密集成,支持建立更高級的測試,避免了JavaScript安全模型的限制。除了來自瀏覽器廠商的支持,Selenium 2 還利用操做系統級的調用模擬用戶輸入。WebDriver 支持api

  • Firefox (FirefoxDriver)瀏覽器

  • IE(InternetExplorerDriver)安全

  • Opera(OperaDriver)網絡

  • Chrome (ChromeDriver)

  • 以及safari(SafariDriver)

它還支持Android(Selendroid)和iPhone(Appium)的移動應用測試。此外,Selenium 2還包括基於HtmlUnit的無界面實現,稱爲HtmlUnitDriver,和基於webkit的無界面瀏覽器phantomjs。Selenium 2 API能夠經過

  • Java

  • C#

  • PHP

  • Python

  • Perl

  • Ruby

等編程語言訪問,支持開發人員使用他們經常使用的編程語言來建立測試。好了,既然python涵蓋在其中,那就簡單看看吧,藝多不壓身啊。。。。

  談及selenium就要推薦兩個網站了,由於selenium在使用的時候須要下載瀏覽器對應的webdriver才行。我我的比較喜歡谷歌瀏覽器,因此第一個網站就是chromedriver插件的下載網址了。

        1. 谷歌瀏覽器啓動下載地址:       http://chromedriver.storage.googleapis.com/index.html

  須要注意的地方,你的瀏覽器須要和對應版本的chromedriver配合,才能使用哦。  

附chromedriver與chrome的對應關係表:

chromedriver版本 支持的Chrome版本
v2.35 v62-64
v2.34 v61-63
v2.33 v60-62
v2.32 v59-61
v2.31 v58-60
v2.30 v58-60
v2.29 v56-58
v2.28 v55-57
v2.27 v54-56
v2.26 v53-55
v2.25 v53-55
v2.24 v52-54
v2.23 v51-53
v2.22 v49-52
v2.21 v46-50
v2.20 v43-48
v2.19 v43-47
v2.18 v43-46
v2.17 v42-43
v2.13 v42-45
v2.15 v40-43
v2.14 v39-42
v2.13 v38-41
v2.12 v36-40
v2.11 v36-40
v2.10 v33-36
v2.9 v31-34
v2.8 v30-33
v2.7 v30-33
v2.6 v29-32
v2.5 v29-32
v2.4 v29-32

 

  個人chrome版本是63的因此直接下載2.3.5就OK。下載好大家的chromedriver.exe 放在指定目錄下   如: pythonpath/scripts  若是電腦環境變量中的path不包含你放置的目錄,記得要添加進去哦。

 

 

   2. webdriver中文社區 :      http://www.webdriver.org/nav1/             上面有不少selenium的相關知識,棒棒噠......

 

來一段簡單的selenium操做吧:

 1 from selenium import webdriver
 2 
 3 firsttest = webdriver.Chrome()  # 聲明驅動對象
 4 
 5 
 6 def first_test(url):
 7     try:
 8         firsttest.get(url)  # 發送get請求
 9         allurl = firsttest.find_elements_by_tag_name('a')  # 找到目標
10         for article in allurl:
11             if article.text == 'Python 修改pip源---windows / Linux':
12                 print(article.get_attribute('href'))
13                 firsttest.get(article.get_attribute('href'))
14                 break
15     except Exception as ErrorInfo:
16         print(ErrorInfo)
17     finally:
18         firsttest.close()  # 關閉谷歌瀏覽器
19 
20 
21 if __name__ == '__main__':
22     url = 'http://www.cnblogs.com/Dracular/'
23     first_test(url)
相關文章
相關標籤/搜索