Python爬蟲——Selenium介紹和Selenium WebDriver安裝


前言:本來是打算在完成一階段爬蟲學習的時候再對此章節進行總結,但是因爲在使用selenium模塊的時候遇到了瀏覽器類型和webdriver的兼容性問題,在經過近1天的排列組合搭配後終將此問題解決,於是決定對selenium模塊進行一次總結。

前置知識:

  • Python爬蟲

1. selenium是什麼

  • selenium中文網
  • seleniumweb自動化測試工具集,包括IDE、Grid、RC(selenium 1.0)、WebDriver(selenium 2.0)等,其中就有包括模擬用戶訪問瀏覽器對web網站進行訪問的模塊,而在python中可以通過調用webdriver實現。不僅僅是python,也同時支持多種編程語言。而在python中可以利用selenium中的webdriver對瀏覽器進行交互,從而實現瀏覽器爬取網頁內容的過程。
  • selenium IDE 是是firefox瀏覽器的一個插件。提供簡單的腳本錄製、編輯與回放功能。如果有需要的話可以自行下載Selenium IDE
  • WebDriver 這裏可以理解爲一套規範,在這套規範裏定義客戶端腳步與瀏覽器交互的協議。(例如下面通過webdriver調用瀏覽器進行爬蟲,並通過id獲取html中指定元素) ,在selenium2.0和以上的版本中才有此模塊,webdriver模塊用來替代selenium1.0 rc模塊
from  selenium import webdriver    #導入python版的webdriver
browser = webdriver.Firefox() # 創建webdriver驅動
browser.get("url") # 調用瀏覽器獲取url內容
browser.find_element_by_id("id")   #id定位方法

2. selenium安裝

2.1 Python安裝selenium

  • 可以直接通過pip安裝
# 如果有多版本,請自行修改對應的pip版本
pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple

2.2 安裝對應瀏覽器版本驅動

  • Selenium 測試直接在瀏覽器中運行,就像真實用戶所做的一樣。Selenium 測試可以在 WindowsLinuxMacintosh上的 Internet ExplorerEdgeChromeFirefox 中運行。而其他測試工具都不能覆蓋如此多的平臺。(這裏我比較推薦使用FireFox或者Chrome)
  • 各種瀏覽器的使用方法和安裝鏈接可以參考官網

firefox安裝

  • Selenium對FireFox的兼容性是最好的,我也十分推薦大家使用FireFox,不僅僅是因爲FireFox是一個多平臺的瀏覽器,在服務器上Selenium也可以穩定的調用FireFox進行無界面的測試。
  • 傳送門:Python爬蟲——Selenium安裝配置FireFox瀏覽器

chrome安裝

  • Selenium對Chrome也有不遜色於FireFox的組件,但是並沒有FireFox可以進行實時錄製的IDE瀏覽器插件,但是也足夠應付我們平時的爬蟲需求(其實好像也用不到),如果對Chrome特別熱愛的人可以參考此篇文章。
  • 傳送門[][]

3. selenium使用常見錯誤總結

Message: XXX executable needs to be in PATH.

程序結束後忘記關閉webdriver !!

  • [][]

session not created: No matching capabilities found

  • [][]

ConnectionResetError 10054:‘遠程主機強迫關閉了一個現有的連接。’

  • [][]

TypeError: ‘str’ object is not callable

  • [][]

參考文獻

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章