歡迎光臨
每天分享高質量文章

中午不知道吃什麼?用Python爬取美團外賣評論幫你選餐!

一、介紹

 

朋友暑假實踐需要美團外賣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的值就可以拿到不同的資料

  • 分析url的網頁原始碼,在原始碼裡有我們想要的評論資料,我們可以用正則(在這裡正則還是比較好用的)把我們想要的資訊弄下來

  • 開啟迴圈,批次抓取

  • 儲存資料至文字和資料庫

三、程式碼

 

四、最後得到的資料檢視和檔案

 

五、總結

 

1.程式報錯很正常,不要一報錯就問別人,先自己思考、百度

2.在資料型別處理方面的知識還要加強

3.感謝皮皮哥、感謝姚文峰前輩!

 

作者:1想得美

連結:http://www.jianshu.com/p/25c8b4cfda1a

《Linux雲端計算及運維架構師高薪實戰班》2018年11月26日即將開課中,120天衝擊Linux運維年薪30萬,改變速約~~~~

*宣告:推送內容及圖片來源於網路,部分內容會有所改動,版權歸原作者所有,如來源資訊有誤或侵犯權益,請聯絡我們刪除或授權事宜。

– END –


    贊(0)

    分享創造快樂