抓包獲取微信文章閱讀數(shù)實戰(zhàn)

2024年7月19日更新

距離寫這篇文章已經(jīng)過去了三年了,期間有不少朋友問我能不能提供一套封裝好的api供大家使用. 其實這些年一直在做這個事情.有需求的朋友可以私信我. 交流交流

2020年12月24日更新

最近有讀者反饋 獲取不到評論數(shù)?

這個其實很簡單,只需要在閱讀數(shù)接口傳入 comment_id 參數(shù)即可獲取到,

comment_id獲取方式在文章的html中



2020年7月8日更新

最近新寫了一篇關(guān)于爬蟲各種技術(shù)的科普?http://www.lxweimin.com/p/21bfeacbc5d5


2020年 4月18日更新

最近有讀者反饋最新的閱讀數(shù)接口的參數(shù)增多

實際我測試了一下 目前文中的使用cookie方式依然可以使用,


想了解相關(guān)技術(shù)的可以私聊我,或者在下方評論


2019年6月27日更新

經(jīng)過艱難險阻.. 目前api終于恢復(fù)了,可以使用的業(yè)務(wù)有

1. 搜狗鏈接轉(zhuǎn)為永久

2. 獲取公眾號歷史發(fā)文消息( 支持獲取全部歷史消息)

3. 獲取文章閱讀數(shù)



12月18日更新

目前API暫時不可用,如果有相關(guān)技術(shù)的朋友可以聯(lián)系我,或者遇到問題的朋友也可以與我交流

待我研究出新方案之后 繼續(xù)提供免費API 感謝各位的支持?

8月3日 更新

對于爬蟲需求量較少的朋友 或者本身對爬蟲技術(shù)不是很熟悉的朋友 可以私信我一下 我這里提供免費的爬蟲API (API包含三個功能? 1.獲取公眾號最近10條歷史消息 , 2.獲取文章閱讀數(shù)/點贊數(shù) 3.獲取搜狗永久鏈接)?


關(guān)于搜狗轉(zhuǎn)永久鏈接 &?抓歷史消息相關(guān)文章? 近期會上線

有相關(guān)技術(shù)問題及批量化問題?請私信聯(lián)系我?

之前寫過幾篇文章 貌似最近微信又改過一次驗證規(guī)則 導(dǎo)致之前的不能用了



正文如下


首先需要獲得一篇文章的地址

例如????https://mp.weixin.qq.com/s/S_g27h2KJPSb1NZ9DPM5Ig

我們在手機中訪問 可以看到他的閱讀數(shù)和點贊數(shù) 如下圖


手機獲取微信閱讀數(shù)

如果在電腦瀏覽器中訪問 是沒有閱讀數(shù)的? 并且換了手機/微信的 user-agent 仍然不能獲取到閱讀數(shù)

為了解決這個問題 首先我們 配置好 抓包工具 看一下手機中訪問這個頁面的時候 究竟有哪些參數(shù)

首先配置好 類似 fiddler/charles之類的http/https抓包工具 如果不會配置 自行百度(不要忘記安裝https證書? ?如果是ios10之后的設(shè)備 需要在設(shè)置中另外開啟一個選項 切記!!!!!!!)


配置好抓包工具后 首先我們訪問以下文章鏈接看一下請求


點擊文章后的請求


如上圖所示 出現(xiàn)了 很多很多的請求? 第一個是文章的html連接 后面一次的還有 閱讀數(shù)接口 和 評論信息接口 還有一個是公眾號信息 還有幾個不知道是做什么的接口

所以抓包后可以得出結(jié)論? 閱讀數(shù)是異步獲取的? 那就好辦了 接下來我們繼續(xù)看這個接口的參數(shù)就好了

https://mp.weixin.qq.com/mp/getappmsgext?f=json&mock=&uin=777&key=777&pass_ticket=QubwCfCA8tQmOKNy05WGE%25252FGdIeQ9xd5smXQdTUznrqfThf6SKZegV%25252BUoNtOHKXYT&wxtoken=777&devicetype=iOS12.0&clientversion=16070025&appmsg_token=966_UjA%252BvpGPcW4k3kPBneqR26gjfiQUlbb0tX_RWCeVBf7_ooOlyQYl1MfANvkqhiXnIy3JX4xFAhbfxM9j&x5=0&f=json

先來看一下這個鏈接? ?post傳送的方式(我記得之前版本有一個 post參數(shù)? 參數(shù)名為 is_read 值為 1 )

先拿到postman里訪問一下嘗試


嘗試發(fā)送請求


結(jié)果如上圖所示 竟然返回的是錯誤

繼續(xù)看一下閱讀數(shù)接口? 發(fā)現(xiàn)除了 get的參數(shù) 和post的參數(shù)之外 還有cookie沒做處理?


閱讀數(shù)接口攜帶的cookie(部分)

那么這個cookie究竟是從哪里來的呢???

于是再往前翻一下 第一個接口 及文章的接口?

這個接口中 發(fā)現(xiàn)了 set-cookie


文章接口中的set-cookie(部分)

通過上圖可以看出 微信的操作是 訪問了文章接口 會set-cookie 給你 帶這個cookie訪問閱讀數(shù)接口 才可以獲得閱讀數(shù)

那接下來我們手動處理一下cookie 再試試

最終成功請求后的結(jié)果如下圖


閱讀數(shù)接口

read_num 為閱讀數(shù) like_num為點贊數(shù)

另外經(jīng)過我一番整理之后 我發(fā)現(xiàn) cookie生成的方式 依賴于 文章接口中的 X-WECHAT-UIN 和 X-WECHAT-KEY這兩個參數(shù) 這兩個參數(shù)的的來源只能是點擊文章獲取? ?獲取后來置換cookie 從而進行接下來的請求

這兩個參數(shù)是微信那邊生成的 目前不知道算法 而且存在過期時間

另外一個閱讀數(shù)的關(guān)鍵參數(shù) 是 appmsg_token?

這個參數(shù)可以在文章頁面的html中獲取 用正則匹配一下即可

另外還有一點小發(fā)現(xiàn) 就是 一篇文章的?X-WECHAT-UIN 和 X-WECHAT-KEY 可以獲取相同公眾號下的文章的閱讀數(shù)?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容