Python Selenium 自動化登入FB 爬首篇貼文-windows 版( 附程式碼與教學影片)
相關文章:
一個觀念,開啟Python 網路爬蟲成長之路!(含全系列連結)
Python爬下PTT文章內容技巧(含程式碼)
在寫網路爬蟲的讀者一定會發現,有些想爬的網頁資訊會需要登入後才會顯示在網頁上。這類網頁就無法簡單使用前篇《Python爬下PTT文章內容技巧》的Bs4模組快速寫出來。這時候就會需要使用到頂頂大名的Selenium了XD。我們這裡就以爬每個帳號登入FB後第一篇文章為範例。
影片與程式碼在最下方
Selenium簡介
Selenium一開始被開發主要是用來做自動化測試的工具,所以可以透過撰寫程式來模擬瀏覽器使用網頁的行為。例如:測試購買按鈕被按下1000次會發生什麼事呢? 總不可能請一個員工來按所以就需要一個工具來模擬使用者操作吧XD。 所以我們剛好可以利用這個特點來實踐網路爬蟲拉。
Selenium使用前準備
安裝Selenium套件
一般Anaconda 預先安裝的套件是不包含Selenium的我們只好手動安裝了。當然歡迎讀者可以使用自己的環境,只要可以安裝就可以了。
- 打開Anaconda Prompt 準備安裝Python 套件包。
2. 輸入下方安裝指令,安裝 selenium
pip install selenium
檢查Chrome 版本
等等要下載一個driver 需要跟本機中的Chrome 版本對應所以一定要確認一下。
打開Chrome > 右上角的更多(三個點)>說明>關於Chrome> 記下版本。
下載Selenium web driver
2. 下載到稍後程式會存放的資料夾中。 一定要放對位置,chromedriver.exe不可以放在子資料夾中喔。一定要放在同個資料夾中。
程式碼撰寫
1. 關閉通知
現在很多網站都會希望可以顯示通知,雖然不會影響我們但是很礙眼哈。所以直接設定關掉。
2.模擬使用者登入
這裡個css_selector跟《Python爬下PTT文章內容技巧》中爬標題的技巧是一樣的,都是根據HTML 的class 或者ID 抓取。運氣很好我們要的元素都剛好有ID 導致我們可以輕鬆定位。
3. 抓取第一篇文章印出文字
完整程式碼:
我相信對於很多讀者來說,只要學到者這裡就可以舉一反三。甚至要爬其他粉專的資料應該也不難了XD。
教學影片
手把手入門網路爬蟲全系列文章(全含程式碼與教學影片):
1.一個觀念,開啟Python 網路爬蟲成長之路!
2. 第一支爬蟲:輕鬆爬取台灣第一位武漢肺炎確診資訊!
3. Cookie 突破PPT 八卦版十八禁限制-網路爬蟲系列
4. 以網路爬蟲角度解析HTML基本概念
5.Python手把手爬取 PPT 八卦版最新話題!
6.Python爬取“多頁面”PTT八卦版資訊