W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
本文轉(zhuǎn)載至知乎ID:Charles(白露未晞)知乎個人專欄
下載W3Cschool手機App,0基礎隨時隨地學編程>>戳此了解
利用Python簡單爬取美團美食板塊商家數(shù)據(jù)。。。
其實一開始我是想把美團的所有商家信息爬下來的,這樣就可以美其名曰百萬數(shù)據(jù)了。。。
然而相信很多爬過美團的朋友都發(fā)現(xiàn)了。。。
如果不進行一些小操作。。。
爬不了幾頁代碼就GG了。。。
后來想想我要這么多數(shù)據(jù)也沒什么用。。。
唯一對我有用的。。。
大概就是美食板塊了。。。
以后用到其他板塊的時候再另外爬就好了。。。
OK,Let's go!
百度網(wǎng)盤下載鏈接: https://pan.baidu.com/s/19FPe8OFVwVa_LvuHjYnB9w
密碼: 3pbr
目的:
根據(jù)輸入的城市名,爬取該城市美團美食板塊所有商家的數(shù)據(jù)。數(shù)據(jù)包括:
店名、評分、評論數(shù)量、均價、地址,
并將這些數(shù)據(jù)存入Excel中。
最后嘗試對爬取到的數(shù)據(jù)做一個簡單的分析。
克服反爬蟲:
爬取每頁數(shù)據(jù)后,隨機停止一段時間后再爬下一頁;
每頁使用不同的cookie值。
具體原理:
沒用抓包軟件。。。
Chrome打開后看了下xhr。。。
發(fā)現(xiàn)直接有接口可以用。。。
給個cookie就能返回所需的數(shù)據(jù)了。。。
后來隨便點了幾個其他板塊的網(wǎng)頁。。。
發(fā)現(xiàn)也差不多是這個套路。。。
詳細的實現(xiàn)過程見源代碼。
Python版本:3.5.4
相關模塊:requests模塊;win_unicode_console模塊;openpyxl模塊;以及一些Python自帶的模塊。
環(huán)境搭建
安裝Python并添加到環(huán)境變量,pip安裝需要的相關模塊即可。
使用演示
在cmd窗口運行MT_Cate_Spider.py文件即可。
簡單分析
其實在碼字的時候我臨時加的這個部分。。。
原因很簡單。。。
我想強調(diào)爬蟲和數(shù)據(jù)分析結(jié)合的重要性。。。
數(shù)據(jù)不多,懶得寫代碼分析了。。。
利用Excel的數(shù)據(jù)分析功能簡單分析一波吧~~~
用的上海地區(qū)的數(shù)據(jù)。
首先當然是按照評分排個序,然后做成柱狀圖:
然后是評論數(shù)量排個序,做成柱狀圖:
然后再做點其他有趣的圖案:
OK,That's all!
如果有需要,我會寫一個爬取美團所有商家信息的腳本,因為就如之前所說。。。
貌似都有直接可以用的接口。。。
所以還算比較簡單。。。
只要弄到足夠多的cookie值就好了。。。
當然這個Flag應該是要到我實在沒東西寫或者懶得重新踩點的時候才會去實現(xiàn)了吧。。。
就這樣吧~~~
有興趣的朋友可以試著去抓其他板塊的數(shù)據(jù)。。。
貌似挺easy的。。。
小心別被封了就好了。。。
代碼截止2018-02-25測試無誤。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: