Docker一键部署:公众号文章下载工具wechat-article-exporter完全指南
时至今日,微信公众号依然是许多人无法绕过的核心信息来源。
相信不少读者与我有着相似的经历:随手关注,订阅列表便轻松突破百位数。遇到一篇优质或实用的文章,往往只是习惯性地转发或点击收藏,随后便任由其沉寂在信息流中,逐渐被时间掩埋。日积月累,无论是技术干货、行业分析,还是长期追踪的专栏内容,都会面临一个共同困境:文章散落在平台内部,难以进行系统化的本地保存,更不用说高效的检索与二次利用。
当某天真正需要引用或回顾时,常常绞尽脑汁也想不起当初是在哪个公众号看到的。许多优质创作者的文章,其内容与编排本身就能构成一个强大的个人知识库。本文将详细介绍一款开源工具——wechat-article-exporter,它支持通过 Docker 进行私有化部署,也能便捷地托管于 Cloudflare,助你高效备份与管理公众号内容。

工具简介
项目的完整名称是 wechat-article/wechat-article-exporter,你可以在 GitHub 上搜索找到它。
这是一个在线的微信公众号文章批量下载与导出工具,能够抓取文章的阅读量、点赞数、评论等数据。你既可以直接使用其在线服务(详见项目主页),也支持通过 Docker 在本地或私有服务器上部署,或者选择部署在 Cloudflare Workers 上。该工具支持导出多种文件格式,其中 HTML 格式完美打包了图片与样式文件,能够 100% 还原文章在微信中的原始排版与视觉效果。
核心功能特性
- 公众号搜索:支持通过关键词搜索目标公众号。
- 多格式导出:支持导出 HTML、JSON、Excel、TXT、Markdown 以及 DOCX 格式。HTML 格式可完整保留图文样式。
- 数据缓存:对文章列表数据进行缓存,有效减少对微信接口的请求频率。
- 高级过滤:支持根据作者、标题、发布时间、原创标识、所属合集等多个维度对文章进行筛选。
- 合集下载:支持一次性下载公众号内的特定文章合集。
- 多媒体支持:能够处理文章内的图片与视频分享消息。
- 数据导出:支持导出文章的评论(含回复)、阅读量、点赞量、转发量等交互数据。
- 灵活部署:提供 Docker 镜像与 Cloudflare Workers 部署方案。
- 开放 API:工具提供 API 接口,便于与其他系统集成或进行二次开发。
详细部署流程
我们以在威联通(QNAP)NAS 上使用 Docker Compose 部署为例,演示具体的操作步骤。
以下是用于部署的 Docker Compose 配置文件代码:
services:
wechat-article-exporter:
image: ghcr.io/wechat-article/wechat-article-exporter:latest
container_name: wechat-article-exporter
ports:
- "3006:3000"
volumes:
- /share/Container/article/data:/app/.data
restart: always
操作时,只需打开威联通 NAS 的 Container Station 应用,创建一个新的应用程序,并将上述配置粘贴进去即可。

实际操作演示
首先,你需要准备一个微信公众号。个人申请订阅号毫无门槛,即使不常使用,也可以申请一个备用。
一个重要提示:由于微信返回的相关 Cookie 设置了 secure 安全属性,这意味着网站必须启用 HTTPS 协议才能正常携带这些 Cookie。不过,通过 localhost 或 127.0.0.1 本地地址访问不受此规则限制。
因此,如果你像以往那样在局域网内通过 HTTP 协议访问(例如 http://NAS_IP:3006),将无法完成扫码登录。如下图所示,登录按钮可能无效或报错。

为了解决这个问题,可以预先为服务配置反向代理并启用 HTTPS。下图展示了在完成反代并登录个人微信账户后的界面。请注意,所有登录状态与缓存数据都存储在本地,如果更换设备访问,需要重新登录和配置。

登录成功后,点击界面上的「添加」按钮,输入你想要备份的公众号名称或关键词进行搜索。这里以一位友人的公众号为例,搜索到后点击添加。

添加的公众号会出现在监控列表中。加载进度条表示工具正在拉取该公众号的所有历史文章列表,请耐心等待刷新完成。

可以预览已加载出的部分文章,列表默认按发布时间由新到旧排列。每篇文章右侧的蓝色按钮分别用于「访问微信原文」和「预览本地抓取效果」。

选择某一篇目标文章,点击「抓取」选项,然后选择「文章内容」开始获取文章的完整数据。

抓取完成后,点击「导出」按钮,你可以从多种格式中选择需要的进行下载。个人更倾向于使用 Markdown 格式,便于后续编辑与管理。

使用 Markdown 编辑器打开下载的文件,可以看到导出的内容格式规整,图片链接也处理得当,效果令人满意。

关于其他高级功能,例如抓取详细的阅读、点赞、评论数据,或者配置自定义代理等,项目官方文档已经提供了非常详尽的说明,建议读者按需查阅,此处不再赘述。

总结与展望
总体而言,wechat-article-exporter 是一款非常实用的工具。它不仅适用于收藏他人的优质内容以构建个人知识库,对于公众号创作者而言,也是备份自己历史文章、进行内容归档的便捷方案。
希望本文的介紹能帮助你更高效地管理微信信息。