關於微信指數爬蟲

2021-08-26 03:09:20 字數 1137 閱讀 5517

1,普通條件欄位很好理解,就是size,page,keyword之類的,大多是控制資料庫的查詢條件,並且明文傳輸沒有加密。

2,所以加密條件欄位就應該是有過加密的字段,例如passwd=e10adc3949ba59abbe56e057f20f883e,密碼通常是要加密的,而且理論上應該是使用不可逆的加密方式,使用者名稱和手機號就應該使用可逆的加密方式,例如aes,des。

3,簽名(sign),這個簽名不是什麼藝術字簽名,而是通過已有的條件加密之後生成的字串,例如md5(param+timestamp)。這樣做的好處是伺服器通過對比客戶端的簽名就能知道請求有沒有被造假。

3,使用者令牌(token),這個可以理解為使用者身份資訊的唯一字串,類似於qq這樣,但是也不同於qq,token可能是通過你的使用者名稱+密碼不可逆加密之後的字串,也可能是個uuid,通過token可以實現免登陸。

如圖所示,先分析字段,放眼望去group_list_query是我們剛才輸入的btc,而gid為空,可以不用管他,剩下openid和search_key都是一串加密字串,從字面意思分析openid可能是token,search_key是簽名。既然有使用者令牌,那肯定就有登入介面,向前找資料報

具體怎麼操作呢,我畫了乙個流程圖,湊合看

如圖所示,爬蟲主線程先啟動兩個服務(爬蟲服務和抓包服務),因為第一次執行爬蟲服務,search_key為空,所以直接啟動自動化指令碼,然後抓包服務監聽到了登入介面,通知爬蟲服務繼續抓包,直到search_key失效(目前是半個小時失效),然後暫停任務啟動自動化指令碼,等待抓包服務的通知。

技術方面其實也沒什麼,抓包可以通過開源專案實現androidhttpcapture網路診斷工具 ,自動化命令無非就是一些adb命令,參考android常用adb命令總結,android**執行adb shell終端命令(linux命令)並返回執行結果

1,呼叫搜尋介面頻率低於10s/次

2,一天內呼叫次數300-1000次

3,超過三天,每天呼叫200次以上

解決方案:

1,多賬號

2,使用/cgi-bin/searchweb/wxindex/querywxindexgrouppage介面,該介面可以最大返回100條歷史記錄(需要翻頁請求10次/5次),最好別改page_size欄位

注:原始碼別問我要,除非你願意付費,那麼我可以重新給你寫乙份

python 微信爬蟲 python 微信爬蟲例項

import urllib.request import urllib.parse import urllib.error import re,time import queue import threading operner urllib.request.build opener operner...

微信指數批量採集 匯出

一 手動 此方法優點是簡單!任何抓包工具或軟體如anyproxy fiddler或apache proxy都能找到對應的json檔案,缺點也是很明顯的,就是要手動輸入!效率低!還要手動替換不要的json中的符號,存為excel更是麻煩!二 手動 指令碼 四 python url分析 五 待大神完善 ...

python微信爬蟲

import urllib.request import re import time import urllib.error 自定義函式,功能為使用 伺服器爬乙個 def use proxy proxy addr,url 異常處理機制 try req urllib.request.request ...