下午不知道吃什麼?用Python爬取美團外賣評論幫你選餐!
阿新 • • 發佈:2018-11-21
一、介紹
朋友暑假實踐需要美團外賣APP評論這一份資料,一開始我想,這不就抓取網頁原始碼再從中提取資料就可以了嗎,結果發現事實並非如此,情況和之前崔大講過的分析Ajax來抓取今日頭條街拍美圖類似,都是通過非同步載入的方式傳輸資料,不同的是這次的是通過JS傳輸,其他的基本思路基本一致,希望那些資料能幫到她吧
二、流程
- 目標站點分析
- 用瀏覽器開啟美團外賣APP評論,F12
- 1.首先我們要找到我們想要的評論資料,在第一次“失敗”的直接抓取網頁原始碼後,我們發現它是通過Ajax載入的,我們點選JS選項,可以發現JS專案裡面的返回結果有我們想要的資料,勾選Preserve log,當點選檢視更多評論時,後臺(JS裡)會出現新的Ajax請求,發現還有引數start和的變化,其他請求引數不變,start的引數變化是以10遞增的,
2.經過我們對http://comment.mobilem.360.cn/comment/getComments?callback=jQuery17203361018749253357_1503362214558&baike=%E7%BE%8E%E5%9B%A2%E5%A4%96%E5%8D%96+Android_com.sankuai.meituan.takeoutnew&c=message&a=getmessage&start=0&count=10&_=1503362215647進行分析後發現它的標準式為‘http://comment.mobilem.360.cn/comment/getComments?&baike=%E7%BE%8E%E5%9B%A2%E5%A4%96%E5%8D%96+Android_com.sankuai.meituan.takeoutnew&start=’+str(i*10),i每次增加1,就包含新的十條評論的內容,所以我們通過改變i的值就可以拿到不同的資料
進群:548377875 即可獲取數十套PDF以及大量的學習教程哦!
- 分析url的網頁原始碼,在原始碼裡有我們想要的評論資料,我們可以用正則(在這裡正則還是比較好用的)把我們想要的資訊弄下來
- 開啟迴圈,批量抓取
- 儲存資料至文字和資料庫
三、程式碼
四、最後得到的資料檢視和檔案
五、總結
1.程式報錯很正常,不要一報錯就問別人,先自己思考、百度
2.在資料型別處理方面的知識還要加強
3.感謝皮皮哥、感謝姚文峰前輩!