您好,登錄后才能下訂單哦!
小編給大家分享一下python實現(xiàn)美團網(wǎng)美食數(shù)據(jù)爬取需要注意什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
數(shù)據(jù)爬取三步曲之前方有坑
工作需求需要采集OTA網(wǎng)站的美食數(shù)據(jù),某個城市的飯店類型情況等。對于老饕來說這不算個事。。。然而最后的結(jié)果是中午晚飯都沒有時間去吃了。。。情況如下
Chrome F12直接定位get請求,response的結(jié)果是json,研究下get的參數(shù)發(fā)現(xiàn)有個奇怪的參數(shù)token?!
先不管他直接修改參數(shù)翻頁請求數(shù)據(jù)?。?!
數(shù)據(jù)爬取三步曲之開始填坑
問題來了!糾結(jié)半天后發(fā)現(xiàn)這個token是有時效的,而且是js生成的。。。這也不是問題,get請求行不通我們還有selenuim。悲催的是美團真的是大廠直接封殺selenuim
數(shù)據(jù)爬取三步曲之將坑填平
又回到原點。沒辦法只能從token下手了經(jīng)過一番查找發(fā)現(xiàn)一個js文件
嗯。。。好吧繼續(xù),因為之前沒有用python直接調(diào)用js,百度一番發(fā)現(xiàn)pyexecjs、PyV8等都可以。悲催的是我的python2.7安裝pyexecjs后一直不能正常使用,PyV8沒有問題。只是PyV8安裝過程太心酸
廢話不多說直接上代碼:
我把js文件存放到本地python直接使用PyV8直接解析執(zhí)行token的js事件
程序自動生成token,迫不及待接續(xù)解析json數(shù)據(jù)入庫
測試完成先抓取北京和上海數(shù)據(jù)進行數(shù)據(jù)可視化
在統(tǒng)計師發(fā)現(xiàn)美團還是對數(shù)據(jù)經(jīng)行了限制每個類型的餐飲場所最多顯示每頁32個一共32頁。也就是32*32=1024個
數(shù)據(jù)可視化
北京、上海美食各類型數(shù)量占比情況
看以看出川湘、燒烤烤肉和西餐在兩地的數(shù)量占比都是最多的。擼串、麻小果然不分南北。
數(shù)據(jù)中有每家店的品論數(shù)量我們可以從中分析出每一類美食的總評論情況來展示受歡迎情況,因展示效果我們只展示top10
北京、上海市top10美食情況
北京和上海兩地火鍋榮登榜首哈
下面我們對比下兩地同類美食的平均價格的情況:
以上是“python實現(xiàn)美團網(wǎng)美食數(shù)據(jù)爬取需要注意什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。