一个本地桌面归档工具:输入公开微信公众号文章链接,保存 Markdown、原始 HTML、元数据和可获取的本地图片;同时提供不依赖登录态的公开法规数据采集 CLI。
本仓库是用于作品展示的可运行公开作品版本,不等于完整生产系统。公开源码可验证单篇公开文章归档及 SAMR、MIIT、CATARC 公开监管数据采集;订阅监听只通过脱敏截图展示,相关链路不在本仓库。能力边界、最短验证路径和使用限制见 作品集公开版说明。
上图来自完整本地原型,不是当前公开版 UI 的运行截图。它展示订阅源管理、检查更新、候选文章选择与单篇归档;本机路径、公众号标识和作者/公众号名称已经脱敏,保留的标题与发布日期来自公开文章。当前公开仓库不包含订阅监听实现。
- 仅处理
mp.weixin.qq.com或weixin.qq.com上无需登录即可访问的公开文章。 - 保存正文 Markdown、HTML 和元数据 JSON;下载可获取的文章图片,并在元数据中记录失败项。
- 文件夹自动编号,输出文件名经过 Windows 安全清理。
- 公开 SAMR、MIIT 和 CATARC 数据结构化为 UTF-8 JSON 和 Excel/WPS 友好的 UTF-8 BOM CSV。
- 不读取 Cookie,不启动代理,不安装根证书,不绕过验证码和访问控制。
公众号主页监听、订阅发现、微信“搜一搜”监听和需要浏览器会话的法规源不属于当前公开作品面,相关实现没有进入本副本。
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
python -m pip install -e .
wechat-article-desktop也可以双击 打开桌面程序.cmd。
python scripts\samr_gb_process_extract.py --pages 1 --page-size 20 --output-root output\samr-process
python scripts\samr_noc_gb_extract.py --output-root output\samr-notices
python scripts\miit_bzgf_extract.py --pages 1 --max-items 5 --output-root output\miit-bzgf
python scripts\catarc_zqyj_extract.py --pages 1 --page-size 10 --output-root output\catarc-zqyj采集器只访问公开页面/API。请控制频率并遵守来源网站的服务条款、robots 策略和版权要求。
python -m unittest discover -s tests -p "test_*.py"
start_app.bat --check测试夹具使用合成或去标识化的标题、编号和联系人信息;保留的政府网站域名仅用于验证公开来源 URL 的解析与拼接,不包含抓取结果或个人数据。
本项目自研代码仅供作品审阅,未经许可不得复制、修改、再发布或用于商业用途;其中源自 will-17173/wechat-article-to-markdown-skill 的部分仍按 MIT License 使用。详见 LICENSE 和 THIRD_PARTY_NOTICES.md。文章内容、图片和法规资料的版权仍归原权利人。
