用途
wechat-article-to-markdown 是一个自包含的工作流 skill:输入微信公众号文章链接,输出整理后的 Markdown 文章目录。适用于用户提供了 mp.weixin.qq.com 文章链接、需要直接产出 Markdown 而不想手动串联多个 skill,或需要把技能复制到别的项目或分享给别人使用的场景。
主要能力
执行时按以下步骤完成:请求微信文章页面;提取标题、作者、公众号名称和正文区域;修复微信文章懒加载图片地址;下载正文图片到本地输出目录;将正文转换为 Markdown;先执行脚本内置的 Markdown formatter,清理标题、空行、无效链接、缺失图片和公众号噪音内容;如果当前环境存在 markdown-formatter skill,再对生成的 Markdown 自动执行一次 markdown-formatter 规则清理;输出文章目录、Markdown 路径和处理摘要。
使用方式
命令格式:
python scripts/wechat_article_pipeline.py <wechat_article_url> [--output-dir <目录>] [--save-html]
示例:
python scripts/wechat_article_pipeline.py "https://mp.weixin.qq.com/s/xxxxxx" --output-dir "./articles"
如需同时保留抓取后的清洗版 HTML:
python scripts/wechat_article_pipeline.py "https://mp.weixin.qq.com/s/xxxxxx" --output-dir "./articles" --save-html
参数说明:
- <wechat_article_url>:微信文章链接
- --output-dir:输出目录,默认: {工作区}/articles
- --workspace-dir:工作区目录,默认自动检测
- --save-html:是否保存清洗后的 HTML 文件
- --timeout:请求超时秒数,默认 30
工作区检测优先级:--workspace-dir 参数、环境变量 WORKSPACE_DIR、环境变量 PROJECT_ROOT、环境变量 CLAUDE_WORKSPACE、当前工作目录。文章默认输出到 {工作区}/articles/ 目录下。
依赖:Python 3.9+、requests。安装依赖:pip install requests。
输出结构
articles/ ├── 01_文章标题/ │ ├── 文章标题.md │ ├── source.html │ ├── image_01.jpg │ ├── image_02.png │ └── ...
目录自动按序号递增,例如 01_、02_、03_;Markdown 文件名与目录标题保持一致;使用 --save-html 时才会额外输出 source.html。脚本完成后会输出文章标题、作者与公众号信息、输出目录、Markdown 文件路径、下载图片数量、格式化修改摘要。Markdown 会直接写入输出目录中的目标文件。
适用场景和限制
该 skill 为独立实现,不依赖其它 skill。若当前项目里存在 markdown-formatter skill,使用本 skill 时应在脚本生成 Markdown 后自动补一遍 markdown-formatter。主要面向微信公众号文章页面结构,普通网页不保证完全适配。若文章受限、被删除或需要登录,抓取会失败。