我爬取分析美團網,原來北京上海Top10美食是它們
數據爬取三步曲之前方有坑
工作需求需要采集OTA網站的美食數據,某個城市的飯店類型情況等。對于老饕來說這不算個事。。。然而***的結果是中午晚飯都沒有時間去吃了。。。情況如下
Chrome F12直接定位get請求,response的結果是json,研究下get的參數發現有個奇怪的參數token?!
先不管他直接修改參數翻頁請求數據!!!
數據爬取三步曲之開始填坑
問題來了!糾結半天后發現這個token是有時效的,而且是js生成的。。。這也不是問題,get請求行不通我們還有selenuim。悲催的是美團真的是大廠直接封殺selenuim
數據爬取三步曲之將坑填平
又回到原點。沒辦法只能從token下手了經過一番查找發現一個js文件
嗯。。。好吧繼續,因為之前沒有用python直接調用js,百度一番發現pyexecjs、PyV8等都可以。悲催的是我的python2.7安裝pyexecjs后一直不能正常使用,PyV8沒有問題。只是PyV8安裝過程太心酸
廢話不多說直接上代碼:
我把js文件存放到本地python直接使用PyV8直接解析執行token的js事件
程序自動生成token,迫不及待接續解析json數據入庫
測試完成先抓取北京和上海數據進行數據可視化
在統計師發現美團還是對數據經行了限制每個類型的餐飲場所最多顯示每頁32個一共32頁。也就是32*32=1024個
數據可視化
北京、上海美食各類型數量占比情況
看以看出川湘、燒烤烤肉和西餐在兩地的數量占比都是最多的。擼串、麻小果然不分南北。
數據中有每家店的品論數量我們可以從中分析出每一類美食的總評論情況來展示受歡迎情況,因展示效果我們只展示top10
北京、上海市top10美食情況
下面我們對比下兩地同類美食的平均價格的情況:
魔都消費水平已經超過帝都啦。。。哈哈哈
以上只是個人簡單分析不代表權威發布僅供娛樂,歡迎各界朋友交流學習。
好了我的泡面好了。。。嗯真香!!!
作者:Kying,西二旗程序單身汪一枚。從事智慧旅游、數據挖掘。新晉python 小白,希望與志同道合者一起煮酒論英雄,數據森麟特邀作者。