微信公众号发文监控

   日期:2024-12-25    作者:shengmeichem 移动:http://oml01z.riyuangf.com/mobile/quote/16891.html


微信公众号发文监控

微信关注了很多技术类的公众号,但是一直都没看,所以想先把文章下载下来,放着以后可能一定会看。

之前写的Python微信机器人系列文章里提到了如何hook微信的实时消息,实时消息里也包含了公众号文章的推送,可以获取到文章的标题链接和发布时间,而且获取的很及时,基本公众号已发文推送就能收到。这样我们可以在收到文章后请求到正文然后保存成html,这样也可以防止文章被删除。

后面有时间顺便把这些公众号的历史文章也下载保存成pdf或HTML。已经在计划内了,采集历史并不麻烦,只是我想保存的时候也将文章的评论一起保存(有时候评论里也有有价值的回复),然后就绕了一些弯路。

另外,我创建了一个github仓库来列出这些公众号,方便大家可以看到,如果你觉得某个公众号对你有帮助也可以关注它(不是广告)。后面如果有看到新的关于逆向的公众号也会更新到仓库里。或者大家有啥好的公众号也可以推荐出来。

仓库地址: https://github.com/kanadeblisst00/high-quality-biz

不过下载完这些历史文章后,分享这些文件也是个问题。如果压缩成一个包放网盘的话不方便更新(我打算每周或者每两周更新一次历史), 如果每次更新压缩成一个包,然后每个公众号一个文件夹的话又不方便上传,也不方便看。等我下载完再看怎么分享吧

导出已关注的公众号列表

这个可以看之前写的一篇文章:【写一个Python微信机器人】第九篇: 导出自己的微信好友列表 。导出的数据里也包含了公众号。

安装
  1. 安装支持的版本(3.9.8.15)微信 (下载链接: 提取码: )
  2. 安装Python,版本大于等于3.7
注入Python到微信

首先创建一个目录,例如,再创建一个(名称随意)写入以下代码:

启动并登录微信,执行这个main.py就会把Python注入到微信并且打开控制台。只要收到公众号的文章推送,控制台就会打印出来

编写自己的处理插件

上面的插件只是演示了怎么获取公众号文章的数据,我直接将数据打印在了控制台。如果你需要保存到文件或者数据库,你只需要继承这个插件,然后重写相应的方法。

假设你在main.py同目录创建了一个文件夹,然后创建了一个文件写入以下内容:

接着在启动的时候传你自定义的插件即可,其他代码不用变。因为没有传httpapi插件,所以不会有fastapi开启http的提示。wechat_pyrobot1.3.0也取消了监听文件夹热更新模块,只会看到如下图所示:

有公众号发文的话你就能看到文件被创建,里面也有数据了。

公众号采集

目前采集微信公众号的文章数据,实时的话基本都得hook。一是时效性高,另外就是不需要主动请求接口,不受接口限制,只需要关注公众号等待公众号发文即可。其中hook Windows端微信的应该最多,因为Windows机器成本低,且可以用服务器长期稳定的运行。

采集历史文章的话,目前能使用的还有以下方式:

  • 微信公众平台
  • 微信读书
  • windows抓包http接口
  • 微信官方客户端(Android、windows等)的非http接口
  • 一些第三方平台,清博等

微信公众平台和windows的http接口使用的人比较多,因为技术难度低,只需要抓包到cookie或者参数就能使用,接口也都没加密。

windows http接口的入口链接 : 。使用biz拼链接然后访问,再用mitmproxy等监听工具修改js来自动化操作(翻页和拦截参数)。但这种方法最近老是被封接口,以前只会封24小时,现在最长可以封一个月。所以我这边已经抛弃了这种方式。

第二种则是新版本打开公众号出现的窗口,这种不是http接口,只能使用hook或者协议来请求。有意思的是这个接口可以无限请求,不会被封接口,但如果请求很频繁并且到达一定量的话会封号,所以需要限制一下每天的请求量。当然,在限制的情况下也比http方式采集的数据多很多。

这个方式还有一点比较好,就是可以在请求列表页的时候获取到每篇文章的阅读数,如果你只是需要链接和阅读数的话,就不需要去每篇文章请求一次阅读数了。


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号