wechat-article-exporter

star 12

微信公众号文章批量导出工具 - 支持Docker本地部署,实现三大场景的自动化工作流:法律研究和知识管理(每周批量下载法律公众号文章,导出Markdown到Obsidian)、竞品分析(下载竞品律所全部历史文章,导出Excel分析内容策略)、AI训练数据准备(批量下载特定领域文章,导出JSON用于模型微调)。支持Markdown、HTML、Excel、JSON四种格式导出

CSlawyer1985 By CSlawyer1985 schedule Updated 1/26/2026

name: wechat-article-exporter version: "1.0.0" description: 微信公众号文章批量导出工具 - 支持Docker本地部署,实现三大场景的自动化工作流:法律研究和知识管理(每周批量下载法律公众号文章,导出Markdown到Obsidian)、竞品分析(下载竞品律所全部历史文章,导出Excel分析内容策略)、AI训练数据准备(批量下载特定领域文章,导出JSON用于模型微调)。支持Markdown、HTML、Excel、JSON四种格式导出 allowed-tools: Read, Write, Edit, Bash, Glob, Grep user-invocable: true triggers: - "/wechat-article-exporter" - "下载公众号文章" - "导出微信文章" - "抓取公众号" - "wechat export" - "export wechat articles" - "下载微信文章" - "公众号文章导出" - "批量下载文章" - "微信文章采集" - "采集公众号" - "公众号文章下载" - "导出公众号" - "wechat article downloader" - "微信文章导出工具"

WeChat Article Exporter

微信公众号文章批量导出工具,支持自动化工作流和多格式导出。

🎯 核心功能

三大使用场景

场景1️⃣:法律研究和知识管理

  • 每周批量下载法律公众号文章
  • 导出为Markdown格式,方便编辑和整理
  • 自动保存到Obsidian知识库
  • 使用AI生成摘要和分类

场景2️⃣:竞品分析

  • 下载竞品律所/律师的全部历史文章
  • 导出为Excel格式,包含阅读量、评论等元数据
  • 使用AI分析内容策略、高频关键词、爆款特征
  • 分析发布时间分布和原创率

场景3️⃣:AI训练数据准备

  • 批量下载特定领域公众号的完整文章库
  • 导出为JSON格式,结构化数据
  • 自动清洗和标注数据
  • 分割训练集/验证集,用于微调Ollama模型

支持的导出格式

格式 文件扩展名 适用场景 优势
Markdown .md 知识管理 便于编辑,适合Obsidian/Notion
HTML .html 存档备份 100%还原原文样式和排版
Excel .xlsx 数据分析 包含阅读量、评论数等元数据
JSON .json AI训练 结构化数据,便于程序处理

🚀 快速开始

前置要求

  • ✅ Docker Desktop已安装并运行
  • ✅ 微信账号(建议使用小号)
  • ✅ 网络连接正常

Step 1:首次部署(自动)

当用户首次触发此Skill时,自动执行以下部署步骤:

# 1. 拉取Docker镜像
docker pull ghcr.io/wechat-article/wechat-article-exporter:latest

# 2. 启动容器
docker run -d \
  --name wechat-exporter \
  -p 3000:3000 \
  --restart unless-stopped \
  ghcr.io/wechat-article/wechat-article-exporter:latest

# 3. 等待服务启动
sleep 5

# 4. 验证服务状态
curl http://localhost:3000/api/status

预期输出

{
  "status": "running",
  "version": "latest"
}

Step 2:扫码登录

# 打开浏览器
open http://localhost:3000

# 或获取登录二维码
curl http://localhost:3000/api/qrcode

使用微信扫描二维码,确认登录。

Step 3:开始使用

服务部署完成后,即可开始下载文章。


📖 使用方法

基础用法

下载单个公众号文章

用户指令示例

  • "下载最高人民法院最近7天的文章"
  • "导出海泰律师事务所的全部文章为Markdown"
  • "抓取最高人民检察院上周的文章"

执行步骤

# 1. 搜索公众号
curl "http://localhost:3000/api/search?keyword=最高人民法院"

# 2. 获取文章列表
curl "http://localhost:3000/api/articles?account_id=xxx&days=7"

# 3. 下载文章
curl -X POST http://localhost:3000/api/download \
  -H "Content-Type: application/json" \
  -d '{
    "account_id": "xxx",
    "format": "markdown",
    "filters": {"days": 7, "original_only": true}
  }'

批量下载多个公众号

用户指令示例

  • "批量下载最高法和最高检的文章"
  • "下载以下公众号:最高人民法院、最高人民检察院、海泰律师事务所"

执行步骤

# 使用Python脚本批量下载
python $SKILL_DIR/scripts/batch_download.py \
  --accounts "最高人民法院,最高人民检察院,海泰律师事务所" \
  --format markdown \
  --output ./downloads/legal

高级用法

按场景使用

场景1:法律研究和知识管理

用户:下载最高人民法院最近一周的文章,保存为Markdown格式

AI执行:

  1. ✅ 检查Docker服务状态
  2. ✅ 搜索"最高人民法院"公众号
  3. ✅ 筛选最近7天的原创文章
  4. ✅ 下载并导出为Markdown格式
  5. ✅ 保存到指定目录
  6. ✅ 使用AI生成文章摘要

场景2:竞品分析

用户:分析竞品律所最近一年的文章策略

AI执行:

  1. ✅ 搜索竞品律所公众号
  2. ✅ 下载全部历史文章
  3. ✅ 导出为Excel格式
  4. ✅ 分析高频关键词
  5. ✅ 分析发布时间分布
  6. ✅ 识别爆款文章特征

场景3:AI训练数据准备

用户:准备建设工程领域的公众号文章用于AI训练

AI执行:

  1. ✅ 搜索建设工程相关公众号
  2. ✅ 批量下载完整文章库
  3. ✅ 导出为JSON格式
  4. ✅ 清洗数据(去除HTML、提取纯文本)
  5. ✅ 去重和过滤
  6. ✅ 分割训练集/验证集

🔧 配置选项

下载选项

参数 说明 默认值
--days 最近N天,0表示全部 0
--original-only 仅下载原创文章 false
--format 导出格式 markdown
--output 输出目录 ./downloads
--limit 最大文章数 0(无限制)

筛选条件

# 按时间筛选
--days 7              # 最近7天
--days 30             # 最近30天

# 按原创筛选
--original-only       # 仅原创

# 按作者筛选
--author "作者名"      # 指定作者

# 按合集筛选
--collection "合集名"  # 指定合集

📂 输出文件

文件组织结构

downloads/
├── 最高人民法院/
│   ├── 2026-01-26-文章标题1.md
│   ├── 2026-01-26-文章标题2.md
│   └── manifest.json          # 文章清单
├── 最高人民检察院/
│   ├── 2026-01-26-文章标题3.md
│   └── manifest.json
└── batch_report.json          # 批量下载报告

文件格式说明

Markdown格式

---
title: 文章标题
date: 2026-01-26
author: 作者名
original: true
url: https://mp.weixin.qq.com/s/xxx
---

# 文章标题

文章正文内容...

Excel格式

包含以下列:

  • 标题
  • 发布时间
  • 作者
  • 阅读量
  • 点赞量
  • 原创标识
  • 文章链接

JSON格式

{
  "export_time": "2026-01-26T10:00:00Z",
  "total": 15,
  "articles": [
    {
      "title": "文章标题",
      "url": "https://mp.weixin.qq.com/s/xxx",
      "publish_time": "2026-01-26",
      "author": "作者",
      "read_count": 12345,
      "content": "文章内容..."
    }
  ]
}

⚠️ 注意事项

账号安全

  • ⚠️ 建议使用微信小号:避免使用主账号
  • 数据完全在本地:不会上传到第三方服务器
  • ⚠️ Session有效期:约24小时,过期需重新扫码

频率控制

  • 每次下载1-2个公众号:避免触发微信风控
  • 下载间隔5-10分钟:给微信API缓冲时间
  • 避免一次性下载过多:可能导致账号限制

版权合规

  • 仅用于个人学习研究
  • 版权归原作者所有
  • 不得直接复制发布到其他平台
  • 不得用于商业侵权

数据备份

  • 下载后及时备份
  • 定期归档历史数据
  • 使用云盘或外部存储

🐛 故障排查

Docker相关

容器无法启动

# 检查端口占用
lsof -i :3000

# 更换端口
docker run -d --name wechat-exporter -p 3001:3000 ghcr.io/wechat-article/wechat-article-exporter:latest

# 查看容器日志
docker logs wechat-exporter

服务无响应

# 重启容器
docker restart wechat-exporter

# 检查服务状态
curl http://localhost:3000/api/status

# 查看详细日志
docker logs -f wechat-exporter

下载相关

扫码登录失败

  • 检查网络连接
  • 刷新页面重试
  • 确认Docker服务正在运行
  • 查看容器日志排查错误

下载失败

  • 检查登录状态是否过期
  • 减少单次下载数量
  • 增加下载间隔时间
  • 检查公众号名称是否正确

格式导出失败

  • 确认选择的格式支持
  • 检查磁盘空间
  • 查看容器错误日志

📊 常见使用场景

场景1:每周自动下载

# 每周一上午10点自动运行
python $SKILL_DIR/scripts/schedule.py \
  --weekly \
  --accounts "最高人民法院,最高人民检察院" \
  --format markdown

场景2:竞品对比分析

# 下载多个竞品文章并分析
python $SKILL_DIR/scripts/analyze.py \
  --accounts "竞品A,竞品B,竞品C" \
  --format excel \
  --analyze

场景3:AI数据准备

# 准备训练数据
python $SKILL_DIR/scripts/prepare_training.py \
  --category "建设工程" \
  --format json \
  --clean \
  --split

💡 最佳实践

数据组织

knowledge-base/
├── legal-news/              # 法律资讯
│   ├── 2026-01/
│   │   ├── 最高法/
│   │   └── 最高检/
├── competitor-analysis/     # 竞品分析
│   ├── 竞品A.xlsx
│   └── 竞品B.xlsx
└── ai-training/            # AI训练数据
    ├── raw-data/
    └── processed/

标签管理

在Markdown文件中添加YAML frontmatter:

---
title: 文章标题
date: 2026-01-26
tags: [法律资讯, 最高法, 司法解释]
category: 民法
---

定期维护

  • 每周备份下载的数据
  • 定期清理过期文章
  • 更新公众号列表
  • 检查Docker镜像更新

🔄 更新日志

v1.0.0 (2026-01-26)

  • ✅ 初始版本发布
  • ✅ 支持四种格式导出
  • ✅ Docker本地部署
  • ✅ 批量下载功能
  • ✅ 数据清洗和处理

📞 技术支持

如遇问题,请检查:

  1. Docker服务是否运行
  2. 容器日志是否有错误
  3. 网络连接是否正常
  4. 微信登录是否有效

祝您使用愉快! 🎉

Install via CLI
npx skills add https://github.com/CSlawyer1985/wechat-article-exporter --skill wechat-article-exporter
Repository Details
star Stars 12
call_split Forks 3
navigation Branch main
article Path SKILL.md
More from Creator
CSlawyer1985
CSlawyer1985 Explore all skills →