反編譯爬餓了么爬蟲(更新后的)

還是老規(guī)矩
餓了么 8.23.2 fiddler4 xposed postman

餓了么版本號

首先吧餓了么的源代碼編譯出來待用 然后把fiddler打開準(zhǔn)備調(diào)試開始找到自己需要的url,
我需要的是"https://restapi.ele.me/swarm/shops/recommend?
用postman調(diào)試了一下 發(fā)現(xiàn)和原來一樣垃圾 沒有一個加密參數(shù) 主要的就是需要登錄驗證 主要就是一個繞過登錄 我這邊想到的辦法就是 手動注冊然后拿cookie (大家如果有時間也可以自己寫一個注冊程序) 然后爬數(shù)據(jù)
首先創(chuàng)建一個隊列里面存已經(jīng)注冊好的cookie
初始化

下面開多線程爬的時候來取數(shù)據(jù)
主要code

每次發(fā)請求的時候去隊列里面拿一個登陸cookie,拿到之后開始請求如果請求成功將cookie從新放入隊列里面
進(jìn)入解析階段 如果失敗就不把cookie放入隊列里面 并且從新請求 如果在可接受的次數(shù)里面都還是沒有拿到數(shù)據(jù)就放棄這次請求
切忌不要一直請求,容易造成死循環(huán) 還有在有些情況下拿到返回值之后可能不管用什么編碼格式都是亂碼 但是在工具上面測試的時候就是正確的這個時候我們就需要考慮是不是返回的gzip格式的數(shù)據(jù)
可以用 java.util.zip.GZIPInputStream 包裝一下在來看
數(shù)據(jù)

在這次爬數(shù)據(jù)中還用了一個爬蟲技巧地圖打點 點越密集得到的數(shù)據(jù)完整性越高
地圖打點的數(shù)據(jù)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容