1. 程式人生 > >Python爬蟲如何獲取動態內容-上

Python爬蟲如何獲取動態內容-上

首先這裡說一下我標題動態內容指的就是一個網頁,每天你去瀏覽它的時候有些內容是更新的,所以這些是在原始碼裡面沒有的。例子為B站每天的輪播和靜態推薦內容都是不斷更新的。


因此,如果想要爬取這些資訊,一直用之前的爬取方式:requests.get(URL) ,是找不到這些的。用的是和get相呼應的:requests.post(URL) 。

關鍵一,就是如何正確得到這些動態更新內容的URL:


開啟網頁,審查元素裡面到Network,這時,重新整理頁面,Network下面的列表內容就會更新,找xhr。我現在是知道找那個了,大體上就是Type是xhr,Name能看出些明堂的那個。例子如下:


看到ranking-3day這個喲,xhr,有種就是它的感覺,就決定是它了。



很好,在Preview裡面找到了那些每天更新的內容,而它們所在的URL在Headers裡面的Request URL可以看到。

# 首頁靜態推薦
url1 = 'http://www.bilibili.com/index/ranking-3day.json'
r = requests.post(url1)
r.encoding = 'utf-8'
p_json = r.json()
到這裡才是開始,有沒有看見json(),如何解析json,從json裡面得到想要的資料資訊是下部分會講到的。我會為目前自己遇到的兩種情況進行說明。