前面幾天主要學習靜態網頁爬蟲,今天來進階的"動態網頁爬蟲"
利用網上大大們的文章來學習 Selenium 的使用,並留下自己學習的痕跡。
今天先簡單列出需要的步驟,好好紀錄不同階段遇到的問題跟解決方式。
要處理動態爬蟲,需要安裝 Selenium 以及瀏覽器驅動程序(WebDriver)。
Selenium 負責自動化瀏覽器的操作,WebDriver 則是用於控制瀏覽器的工具。
Selenium ,模擬一般消費者瀏覽的網頁的所有習性,
也因此爬蟲速度會較慢、同時也仰賴網速及消耗大量 cpu!
在處理靜態時,我們也經過安裝套件( requests 和 beautifulsoup4 )
在動態頁面處理上我們需要的是 Selenium 以及 WebDriver 的配對
我想拆五個階段來說
安裝 Selenium$ pip3 install selenium
起頭程式碼會需要像這樣的導入
from selenium import webdriver
WebDriver 的選擇,瀏覽器版本先確認
實作瀏覽器為 Chrome ,先確認自己 chrome 版本
(菜雞如我,還真是我第一次接觸到要確認瀏覽器版本的步驟)
下載對應的 WebDriver
這階段的操作,需至官網手動下載,並非指令處理!
下載 Chrome WebDriver 的方式:一開始我只找到這個 Chrome WebDriver 下載頁面的資訊 :(偏古老)
記得要先檢查過目前的瀏覽器版本!
再去下載對應的 driver(之後也要適時更新版本以維護程式碼運行喔!)
這是後來找到比較適合我版本的網址
安排路徑
接續上面,將下載的 Driver 文件放在你的系統 PATH(或指定路徑)下,
讓 Selenium 能夠在任何位置找到 ChromeDriver 的可執行文件。
這裡有兩種方式可以設定:指令方式 or 圖形介面方式處理
編寫程式碼
完成安裝和配置 ChromeDriver,接下來的步驟是編寫 Python 代碼,使用 Selenium 來控制 Chrome 瀏覽器進行動態網頁爬取或自動化操作。
以上五個要點算是想要使用 Selenium 的前置處理吧
拆得比較細,細細品嚐慢慢消化,大量資訊我會先暈
明天再來說說五個階段的詳細處理。
用 Python 匯入 Selenium 的方式,以及如何用mac 安裝 ChromeDriver
動態網頁爬蟲第一道鎖 — Selenium教學:如何使用Webdriver、send_keys(附Python 程式碼)