windows微信公众号采集系统

微信采集系统项目文档环境配置

1. mitmproxy安装: 在Python 3环境下,直接使用pip进行安装。如果下载速度慢,可以切换到其他源进行下载。

pip install mitmproxy==4.0.4 --use-feature=2020-resolver

安装完成后,在命令行中输入

mitmdump
,默认使用8080端口。

mitmdump

安装成功后,下载mitm证书:访问http://mitm.it/,点击Windows选项下载并安装证书。

如果网页显示"If you can see this, traffic is not passing through mitmproxy",请按照第二步设置Windows本地代理后重新安装。

2. Windows本地代理: 在Windows 10中,设置路径为:设置 => 网络 => 代理 => 手动设置代理,启用使用代理选项,并将IP地址设置为127.0.0.1,端口设置为默认的8080或其他修改后的端口。记得点击保存。

3. 数据库: 下载并启动MySQL服务,修改项目settings配置文件,创建数据库weixin_spider,字符集设置为utf8mb4。

create database weixin_spider  DEFAULT CHARACTER SET utf8mb4;

下载并安装Redis,启动服务,修改项目settings配置文件和addons.py文件。

4. 本地模块准备工作: 根据requirements文件安装Python库,如有遗漏,请根据提示自行安装。

启动测试: 确认环境配置完成后,确保端口(5000、8080)不冲突。

  1. 确认MySQL和Redis服务已开启,并可正常连接。
  2. 运行webapp/models.py文件,创建数据库表,检查表结构是否正确生成。

  1. 登录微信PC版,找到文件传输助手对话框,双击文件传输助手,将其固定在屏幕左上角,根据显示器调整具体位置。

  1. 依次运行Python脚本(也可以运行.sh文件代替):

    • 运行wx_monitor.py,确认程序是否成功启动。
    • 运行manage.py,打开网页http://127.0.0.1:5000/,确认成功开启Web服务。
  2. 开启mitmproxy,确保可以拦截到数据(需要cd到tools目录下)。

cd tools/ && mitmdump -s ./addons.py  --ssl-insecure

采集目标: 采集微信公众号文章的阅读数、在看数、评论数、评论列表,以及微信公众号的账号基本信息。

采集难点: 采集以上数据需要获取客户端的一些参数,例如x-wechat-key、__biz、appmsg_token、pass_ticket等。

采集方式: 通过Windows客户端和mitmproxy的方式获取加密参数。

采集流程:

备注: 一个微信号每天只能获取5000-8000篇文章的阅读/点赞/评论等数据。

GitHub:https://www.php.cn/link/c7079f5de6bede408a06fe0dd40d7a40

启动测试: 准备工作完成后,访问http://127.0.0.1:5000/。

添加已关注的公众号,点击启动,即可进行采集。

目录结构:

weixin-spider
│ manage.py (web服务启动文件)
│ README.md (项目说明文档)
│ requirements.txt (项目安装包)
│ wx_monitor.py (任务调度中心)
├─api
│ │ crawlerapi.py (爬虫文件)
│ │ __init__.py
│ │ ├─exceptions (异常捕获目录)
├─tools
│ │ addons.py (mitm配置)
│ │ handle.py (自动化操作)
│ │ keys.py (redis-keys管理)
│ │ proxy.py (本地代理)
├─webapp
│ │ models.py (数据库表模型)
│ │ __init__.py
├─static (静态资源目录)
├─templates(html文件目录)
│ │ ├─wxapp
│ │ │ selffilter.py (过滤器)
│ │ │ views.py (视图文件、接口)

GitHub:https://www.php.cn/link/c7079f5de6bede408a06fe0dd40d7a40