本文将介绍一种通过模拟操作微信App的方式采集指定公众号的所有历史数据的方法。

通过抓包分析发现,微信公众号的历史数据是通过HTTP协议加载的,对应的API接口如下图所示,其中有四个关键参数(__biz、appmsg_token、pass_ticket以及Cookie)。

为了能够拿到这四个参数,需要模拟操作App,让其产生这些参数,然后再抓包获取。
需要模拟操作微信完成如下步骤:

  1. 启动微信App

  2. 点击"通讯录"

  3. 点击"公众号"

  4. 点击要采集的公众号

  5. 点击右上角的用户图像图标

  6. 点击"全部消息"


    此时,我们可以从https://mp.weixin.qq.com/mp/profile_ext?action=home的应答数据中捕获__biz、appmsg_token以及pass_ticket三个关键参数,以及请求头中的Cookie值。如下图所示。



    有了上述四个参数,我们就可以构造出获取历史文章列表的API请求,通过调用API接口直接获取数据(不需要再模拟App操作)。核心参数如下所示,通过改变offset参数,可以拿到所有历史数据。

view plaincopy to clipboardprint?

Cookie headers = {‘Cookie’: 'rewardsn=; wxtokenkey=777; wxuin=584068438; devicetype=android-19; version=26060736; lang=zh_CN;

pass_ticket=Rr8cO5c2******3tKGqe7aVZzV9TupvrK+1uHHmHYQGL2WFdKIE;
wap_sid2=COKhxu4KElxckFZQ3QzTHU4WThEUk0zcWdrZjhGcUdYdEVSV3Y1X2NPWHNUakRrd1ZzMnpLTERpdE5rbmxjSTg******dlRBcUNRazZpOGxTZUVEQUTgNQJVO’}
url = ‘https://mp.weixin.qq.com/mp/profile_ext?’ data = {}
data[‘is_ok’] = ‘1’ data[‘count’] = ‘10’ data[‘wxtoken’] = ‘’
data[‘f’] = ‘json’ data[‘scene’] = ‘124’ data[‘uin’] = ‘777’
data[‘key’] = ‘777’ data[‘offset’] = ‘0’ data[‘action’] = ‘getmsg’
data[‘x5’] = ‘0’

下面三个参数需要替换

https://mp.weixin.qq.com/mp/profile_ext?action=home应答数据里会暴漏这三个参数 data[’__biz’] = ‘MjM5MzQyOTM1OQ==’ data[‘appmsg_token’] =

‘993_V8%2BEmfVD7g%2FvMZ****4DNUJNFkg~~’ data[‘pass_ticket’] =
‘Rr8cO5c23ZngeQHRGy8E7gv*****pvrK+1uHHmHYQGL2WFdKIE’ url = url +
urllib.urlencode(data)

以"数字工厂"这个微信公众号为例,采集过程运行截图如下所示:

输出结果截图如下所示:

了解更多分析及数据抓取可查看:
http://cloud.yisurvey.com:9081//html/37be8794-b79e-4511-9d0a-81f082bac606.html
本文转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请联系我们删除处理。
特别说明:本文旨在技术交流,请勿将涉及的技术用于非法用途,否则一切后果自负。如果您觉得我们侵犯了您的合法权益,请联系我们予以处理。

如何采集微信公众号历史数据相关推荐

  1. 爬虫实战教程:采集微信公众号文章

    一.场景简介 1.场景描述:通过搜狗采集微信公众号的文章 2.入口网址:https://weixin.sogou.com/weixin?type=1&s_from=input&quer ...

  2. 2020年7月最新,火车头批量采集微信公众号最近文章(包括实时更新)的方法及思路

    火车头采集微信公众号,这是许多网站建设的小伙伴都想要的功能.这篇内容是我在2020年4月份写的,但今天到7月了,完全没有问题.费话不多说,直接上干货. 先说说我的需求: 抓取一批公众号,大概10个.监 ...

  3. python公众号文章_python采集微信公众号文章

    本文实例为大家分享了python采集微信公众号文章的具体代码,供大家参考,具体内容如下 在python一个子目录里存2个文件,分别是:采集公众号文章.py和config.py. 代码如下: 1.采集公 ...

  4. python爬取公众号_基于Python采集爬取微信公众号历史数据

    鲲之鹏的技术人员将在本文介绍一种通过模拟操作微信App的方式采集指定公众号的所有历史数据的方法. 通过我们抓包分析发现,微信公众号的历史数据是通过HTTP协议加载的,对应的API接口如下图所示,其中有 ...

  5. python采集微信公众号_Python爬虫,微信公众号文章采集工具

    #微信公众号文章采集 import requests from lxml import etree import re import os def get_con(url): #url="h ...

  6. 用浏览器监控采集微信公众号最新文章

    最近单位需要收集多个微信公众号的文章内容,手机上关注无法批量保存和导出文章.找了很久才发现搜狗可以搜索公众号,但每个公众号只显示一条最新的内容.于是就想到了使用软件不断循环监测采集的办法,每次出现新的 ...

  7. 微信公众号采集 php,如何采集微信公众号历史消息页

    采集微信文章和采集网站内容一样,都需要从一个列表页开始.而微信文章的列表页就是公众号里的查看历史消息页.现在网络上的其它微信采集器有的是利用搜狗搜索,采集方式虽然简单多了,但是内容不全.所以我们还是要 ...

  8. 采集微信公众号文章只需几步(非搜狗微信)

    我们先去下载采集微信文章软件或者百度"小蜜蜂公众号文章助手"下载最新版 第一步:打开软件 第二步:登录微信电脑版 点击"公众号" 选择要采集的公众号 点击右上角 ...

  9. anyproxy批量自动采集微信公众号文章

    我从2014年就开始做微信公众号内容的批量采集,最开始的目的是为了做一个html5的垃圾内容网站.当时垃圾站采集到的微信公众号的内容很容易在公众号里面传播.当时批量采集特别好做,采集入口是公众号的历史 ...

最新文章

  1. 【组队学习】【34期】Python(一级)
  2. 滴滴顺风车GM:大多数产品经理定义是狭隘的
  3. 一种数据结构 跳表skiplist
  4. 计算机系统基础:设备管理知识笔记
  5. Flask-1-05-CookieSession
  6. 13新功能_新功能简介|MySQL8.0数据查询脱敏
  7. 广电运通不好进吗_我可以说郑州新风的安装大部分都是垃圾吗?
  8. Android UI 备忘:DrawerLayout
  9. 5 kvm虚拟磁盘扩容
  10. html中无序列表做成链接,Beautifulsoup从无序列表中提取文本和链接divulli(斯堪的纳维亚字符)...
  11. 解决Ubuntu18无法连接Airpods、蓝牙耳机的问题
  12. conan入门(十九):封装第三方开源库cpp_redis示例
  13. Unity 2D手游——坦克大战 C#
  14. java数组相似度_Java 计算两个字符串的相似度
  15. 确认过眼神—是我重返博客的第一文
  16. VM虚拟机(VMware)设置外网连接
  17. PDF可以通过OCR图文识别软件转换为JPEG图像吗
  18. android 自适应图片轮播,Android使用Recyclerview实现图片轮播效果的方法
  19. 达梦数据库DW集群部署搭建流程步骤说明
  20. linux 文件查找帮助命令 , 查看网络链接信息, 历史命令

热门文章

  1. 1.5v电池是几号?
  2. eclipse 启动 tomcat htt://localhost:8080 不能访问
  3. 湖北省中小学网络考试中心 html,中小学教师资格网登录入口|ie浏览器
  4. 连接共享打印报错0X0000011b
  5. 基于MCR的MATLAB使用案例
  6. (只需五步)ChatGPT接入微信的攻略
  7. java 彩票走势图算法
  8. 如何在靠tiktok在三个月内快速赚到20w的?实现人生逆转
  9. 手写PE结构解析工具
  10. Jetpack学习-Paging