1. 程式人生 > >Python網絡爬蟲技巧小總結,靜態、動態網頁輕松爬取數據

Python網絡爬蟲技巧小總結,靜態、動態網頁輕松爬取數據

開發者工具 cap 簡單 pos 動態網頁 class 查看 這樣的 bsp

很多人學用python,用得最多的還是各類爬蟲腳本:有寫過抓代理本機驗證的腳本,有寫過自動收郵件的腳本,還有寫過簡單的驗證碼識別的腳本,那麽我們今天就來總結下python爬蟲抓站的一些實用技巧。

技術分享圖片

靜態網頁

對於靜態網頁的爬蟲不用多說大家也都知道,因為爬取靜態網頁非常的簡單,只要用requests直接把html爬取下來然後用正則表達式匹配就可以了。

技術分享圖片

動態網頁

相對於靜態網頁的簡單,但是動態網頁的就會相對而而言會復雜一下,而且現在互聯網的發展速度,動態網頁是最多的,靜態網頁是比較少的,不過他有張良計,我有過墻梯。

動態網頁的http請求分為兩種形式:

Get方法和post方法

  • Get方法:比如說我們在瀏覽器上輸入一個網絡地址,就是發起一個Get方法的請求。這種網絡地址就是URL。
  • Post方法:在爬蟲中不常見,故不詳細介紹

如果知道一個網站的請求是形式,熟練使用F12開發者工具,裏面查看network就可以了。

看一下案例

技術分享圖片

當然了,並不是所有的網頁都是靠發送請求來得到數據的,也有非發送數據的動態網頁。

對於這樣的網站,我們一般是用selenium來做模擬瀏覽器的行為,可以直接獲取瀏覽器渲染後的結果。不過selenium的速度比較慢。

具體案例如下:

技術分享圖片

所以無論網頁是靜態網頁還是動態網頁都是方法爬取的,當然了,很多網站是需要登錄和識別驗證碼、反爬等,無論網站出什麽樣的措施都是有應對方法,關鍵在於你會不會。

Python網絡爬蟲技巧小總結,靜態、動態網頁輕松爬取數據