关于 yichen-wechat-mp-batch-exporter
用于批量下载和整理微信公众号文章的 Agent 技能,面向需要导出文章正文、历史列表或增强数据的用户。它通过多种导出流程处理不同需求,并要求登录、代理和微信桌面操作由用户确认。
主要功能
- 01批量下载已知文章 URL
- 02导出公众号历史文章列表
- 03分析去重并区分文章计数口径
- 04按需导出阅读及互动数据
- 05遵循凭据保护和人工确认规则
适用场景
- 01将 URL 清单批量保存为 Markdown
- 02查看公众号历史文章并统计数量
- 03整理文章正文及阅读互动指标
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mcncarl/ yichen-skills --skill yichen-wechat-mp-batch-exporter安装后在 Claude Code 中输入/yichen-wechat-mp-batch-exporter确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdagents/openai.yamlreferences/exporter-workflow.mdmanual-gates.mdoutput-schema.mdscripts/analyze_history.pydoctor.pydownload_urls.pystart_wxdown_service.py详细介绍
微信公众号批量导出器
核心规则
绝不操作用户的微信界面。不要发布、删除、群发、关注、取消关注、发送消息,也不要在微信中点击任何内容。对于需要使用微信桌面端的工作流,准确告知用户需要执行的操作,并等待确认。
绝不要在聊天或保存的报告中输出原始 Cookie、auth-key、token、pass_ticket、key、uin、凭据 JSON 或二维码登录密钥。
下载的文章内容归原作者或权利人所有。除非用户确认自己有权转载或再分发,否则仅在用户合法/私人使用的范围内使用导出内容。
第一步
选择工作流前,先运行本地诊断:
python3 {baseDir}/scripts/doctor.py
只有当任务需要公共导出器 API 或在线下载端点时,才使用 --check-network。
决策树
- 用户提供了已知文章 URL,且只需要正文/Markdown:使用
scripts/download_urls.py;无需登录或操作微信。 - 用户想获取某个公众号的历史文章列表或最新 N 篇文章:使用
wechat-article-exporter的导出器模式;这需要登录/auth-key,且必须是用户自己的微信公众号后台账号。 - 用户需要阅读量、点赞、转发、评论或评论回复:先使用
wxdown-service凭据流程,然后从wechat-article-exporter导出增强字段。 - 用户表示“不登录”“代理模式”,或导出器模式失败:仅在用户明确确认后,使用代理/历史记录回退方案;先阅读
references/manual-gates.md。
对于无需批量处理或增强数据的简单单 URL 提取,优先使用现有的 $wechat-article skill。
数量统计规范
在明确统计范围之前,绝不要将公众号文章总数直接报告为“ N 篇文章”。
任何历史记录同步或导入历史记录 JSON 后,都要运行:
python3 {baseDir}/scripts/analyze_history.py --history-json /path/to/history.dedup.json
python3 {baseDir}/scripts/analyze_history.py --chunk-dir /path/to/chunks --output-dir /path/to/output
面向用户的回答中使用以下标签:
publish_groups:唯一的msgid值;大致对应一组微信发布/消息。expanded_url_items:展开多篇文章消息后得到的所有唯一文章 URL。original_articles:前端样式的原创文章数,使用copyright_type=1、copyright_stat=1和is_deleted=false统计。
如果统计结果与用户在微信中看到的数量不一致,先解释统计范围的差异,并指出生成的 history.summary.json/history.summary.md。
已知 URL 正文下载
对于粘贴的 URL、.txt、.csv 或 .json URL 列表,使用此路径:
python3 {baseDir}/scripts/download_urls.py --file /path/to/urls.txt --format markdown
python3 {baseDir}/scripts/download_urls.py "https://mp.weixin.qq.com/s/..."
仅报告:成功数量、失败数量、失败的 URL、输出目录和 index.csv。
默认输出:
~/Downloads/wechat-mp-batch/<run-id>/
|-- index.csv
|-- errors.json
`-- articles/
`-- 001-<safe-title>.md
历史记录与增强导出
运行导出器、处理历史记录或增强数据任务前,先阅读 references/exporter-workflow.md。
使用以下命令启动本地凭据助手:
python3 {baseDir}/scripts/start_wxdown_service.py
使用成熟的上游工具栈:
wechat-article/wechat-article-exporter用于账号搜索、文章历史记录、正文下载和多格式导出。wechat-article/wxdown-service用于采集用户自有凭据,以获取阅读/评论指标。
本地源码路径因环境而异。优先使用环境变量或显式脚本标志:
export WECHAT_ARTICLE_EXPORTER_DIR=/path/to/wechat-article-exporter
export WXDOWN_SERVICE_DIR=/path/to/wxdown-service
python3 {baseDir}/scripts/doctor.py --exporter-path "$WECHAT_ARTICLE_EXPORTER_DIR" --wxdown-path "$WXDOWN_SERVICE_DIR"
python3 {baseDir}/scripts/start_wxdown_service.py --wxdown-dir "$WXDOWN_SERVICE_DIR"
使用公共导出器时,默认基础 URL 为:
https://down.mptext.top
手动确认关卡
任务涉及登录、凭据、评论、阅读量、代理、证书信任或微信桌面端时,务必阅读 references/manual-gates.md。
以下操作始终需要用户明确确认:
- 扫描二维码并选择用户的公众号或服务号。
- 安装或信任 mitmproxy 证书。
- 启用或更改 macOS 系统代理设置。
- 要求用户在微信桌面端打开文章/历史记录页面并滚动浏览。
- 使用粘贴的 auth-key 或凭据文件。
输出
构建归档,或将导出器结果合并到其他系统时,请阅读 references/output-schema.md。
建议的增强归档字段:
account_name, fakeid, title, url, publish_time, author, digest, cover_url,
body_markdown_path, html_path, image_dir,
read_count, like_count, share_count, favorite_count, comment_count,
comments_path, comment_replies_path, fetch_mode, credential_status, exported_at
历史记录分析输出应包含:
history.summary.json, history.summary.md,
history.dedup.json, history.dedup.csv, urls.all.txt,
history.original.json, history.original.csv, urls.original.txt
无法自动完成的事项
- 不绕过登录、已删除内容、付费墙、私密文章或平台权限检查。
- 没有用户新提供的凭据时,不保证阅读量或评论量指标。
- 不操作微信界面,也不代替用户执行必须在微信桌面端完成的操作。
- 文章关闭或隐藏评论时,不承诺发表评论。
- 不暗中安装系统证书、更改代理或让代理设置一直处于启用状态。