Python爬蟲經常爬不到資料,或許你可以看一下小編的這篇文章

il_持之以恆_li發表於2020-05-07

原標題:解決Python爬蟲爬不到資料

前言:

近期,通過做了一些小的專案,覺得對於Python爬蟲有了一定的瞭解,於是,就對於Python爬蟲爬取資料做了一個小小的總結,希望大家喜歡!

1.最簡單的Python爬蟲

最簡單的Python爬蟲莫過於直接使用urllib.request.urlopen(url=某網站)或者requests.get(url=某網站)
例如:爬取漫客棧裡面的漫畫
文章連結:運用Python爬蟲下載漫客棧裡面的漫畫

在這裡插入圖片描述
程式碼和執行結果:
在這裡插入圖片描述
這是最簡單也是最基礎的Python爬蟲.

2.需要新增headers的Python爬蟲

有的網址爬取資料需要新增User-Sgent、Cookie等欄位資訊,這個時候我們需要新增一個請求頭,也就是一個字典,User-Sgent、Cookie等欄位資訊就放這裡面。
如:運用Python爬蟲下載表情包
文章連結:運用Python爬蟲下載表情包

沒加請求頭
在這裡插入圖片描述
加上請求頭:
在這裡插入圖片描述
是不是加與沒加,就有很大的區別.

3.所爬取的資料在NetWork裡面

有個時候,我們所爬取的資料新增請求頭之後,也爬取不到,這個時候,我們就需要想一想NetWork,下面有XHR和JS,也許所需要資料就在這兩個其中的一個裡面。
如:爬取王者榮耀英雄皮膚
爬取王者榮耀英雄皮膚

在這裡插入圖片描述
如果用上面第二種方法,可以發現,就算新增請求頭,也訪問不到資料,我們看一下網頁原始碼,發現,這些資料根本就不在原始碼中,所以這樣肯定爬不到資料。
我們點選電腦鍵盤F12,然後再點選NetWork下面的JS,按F5重新整理,可以發現,這些圖片的下載連結在JS下面的一個json檔案裡。
在這裡插入圖片描述

4.動態載入的資料

動態載入的,像網易雲音樂,雖然我們也可以在NetWork下面找到相應的資料,但是這是一個post請求,比較複雜,我們可以使用selenium模組,這個過程我就不講解了
這裡有關於它的文章連結:運用selenium下載網易雲音樂

5.總結

上面講解的這些,我都有關於它們的文章,讀者可以自行找到並閱讀。
也許我還是一個Python爬蟲小白吧!講解的深度還不夠,希望大家諒解,在以後的日子裡,我會加油學的。如果讀者覺得我的這篇文章對於你有所幫助,希望大家給我點一個小小的贊,謝謝!

相關文章