聽說你到現在還不會爬取攜程評論?


大家好,我是辰哥。

這幾天在辰哥的技術交流群里有讀者反應說不會爬取攜程的評論數據,今天辰哥給讀者安排上。作為辰哥的文章讀者,辰哥必須教會大家如何爬取攜程評論數據(哈哈哈)。

下面就以長隆野生動物世界為例,講解如何去爬取攜程評論數據

涉及核心知識點:

  1. Ajax異步請求分析

  2. 發送post請求


01

分析數據源



這里的數據源是指html網頁?還是Aajx異步。對於爬蟲初學者來說,可能不知道怎么判斷,這里辰哥也手把手過一遍。

提示:以下操作均不需要登錄(當然登錄也可以)

咱們先在瀏覽器里面搜索攜程,然后在攜程里面任意搜索一個景點:長隆野生動物世界,這里就以長隆野生動物世界為例,講解如何去爬取攜程評論數據。

頁面下方則是評論數據

1.分析數據源

從上面兩張圖可以看出,點擊評論下一頁,瀏覽器的鏈接沒有變化,說明數據是Ajax異步請求。因此我們就找到了數據是異步加載過來的,這時候需要去network里面是查看數據包


02

分析數據包



在network中找到下面這個數據包

查看Preview里面的內容(請求返回內容)

可以看到數據已經請求到了,下面看一下數據是否是正確的(和網頁內容一致)。

ok,沒問題之后,下面開始編寫Python程序去請求數據。

1.請求地址

可以獲取到請求鏈接和請求方式。

這里請求不用添加請求頭header也是可以的。其中postUrl是請求鏈接,data_1是請求參數。

2.請求參數

在network里可以看到請求參數

在程序中的構建如下:

其中需要關注的是arg中的pageIndex(頁數),pageSize(每頁條數)。

最終結果如下:

該景點的評論就可以成功爬取下來了。


03

采集全部評論



上面只是采集了第一頁的評論數據,通過改變arg中的pageIndex(頁數),就可以遍歷爬取全部的評論。

比如這個景點一共是300頁。現在把循環給加上

最終的完整代碼如下:


04

小結




本文涉及核心知識點:

  1. Ajax異步請求分析

  2. 發送post請求

最后說一聲:原創不易,求給個贊、在看、評論

推薦閱讀

實際上采集全網視頻也沒那么難

實戰|驚呆了,Python竟然能剪輯視頻!

實戰|教你用Python玩轉Redis


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM