1. 程式人生 > >使用Selenium模擬瀏覽器抓取

使用Selenium模擬瀏覽器抓取

最近在學習python爬蟲的一些知識,在練習demo的過程中,碰到了一些問題,現已經解決,希望能給學習的朋友一點幫助。

安裝

python版本建議使用python3.6版本

python下載地址

https://www.python.org/getit/
python安裝檢查

檢查是否安裝成功的方法: 在Windows命令列(cmd),輸入“python”命令來檢驗,若提示Python不是內部或者外部命令,就把Python的安裝目錄新增到系統環境變數的Path下面。

新增系統環境變數的步驟:

控制面板 -> 系統和安全 -> 系統 -> 高階系統設定 -> 高階 -> 環境變數 -> 新建

正常python安裝的時候有一個勾選新增到環境變數的操作,勾選上就不用自己配置環境變量了

selenuim下載安裝

pip install selenium

selenuim安裝檢查

輸入pip show selenium可檢視當前的selenium版本

瀏覽器支援下載

 1.chromedriver 下載地址:https://code.google.com/p/chromedriver/downloads/list

 2.Firefox的驅動geckodriver 下載地址:https://github.com/mozilla/geckodriver/releases/

 3.IE的驅動IEdriver 下載地址:http://www.nuget.org/packages/Selenium.WebDriver.IEDriver/

selenuim嘗試

from selenium import webdriver
driver = webdirver.Firefox()
dirver.get("https://www.dianping.com/search/category/7/10/pl")

報錯:

Message: 'geckodriver' executable needs to be in PATH

解決方案:(以firefox為例)

2、下載解壓後將getckodriver.exe複製到Firefox的安裝目錄下,如(C:\Program Files\Mozilla Firefox),並在環境變數Path中新增路徑:C:\Program Files\Mozilla Firefox;

瀏覽器環境變數可以右擊瀏覽器圖示,點選屬性,複製瀏覽器exe檔案的位置,然後開啟控制面板 ->系統和安全 -> 系統 -> 高階系統設定 -> 高階 -> 環境變數 ->選擇path,在python的path下新增瀏覽器的啟動位置。

3、重啟IDE或者終端即可

錯誤2

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

caps = webdriver.DesiredCapabilities().FIREFOX
caps["marionette"] = False
binary = FirefoxBinary('C:\Program Files (x86)\Mozilla Firefox\firefox.exe')
dirver = webdriver.Firefox(firefox_binary=binary, capabilities=caps)
dirver.get("https//www.santostang.com/2017/03/02/hello-world/")

FileNotFoundError: [WinError 2] 系統找不到指定的檔案。

解決

路徑使用反斜槓

binary = FirefoxBinary('C:/Program Files (x86)/Mozilla Firefox/firefox.exe')