夜雨聆风学习资料网

ARTICLE · 1018420

GitHub开源神器:一键批量下载公众号文章,连阅读量都能扒下来!

GitHub开源神器:一键批量下载公众号文章,连阅读量都能扒下来!

你有没有遇到过这种情况?看到一篇特别棒的公众号文章,想收藏起来慢慢看,结果过了几天,文章被删了。或者你是做运营的,需要整理竞品公众号的历史文章,手动一篇篇复制粘贴,手都酸了还搞不定。

今天给你介绍个宝藏项目,叫 wechat-article-exporter,GitHub上已经拿了上万星,专门解决这个头疼问题。

这个项目最牛的地方是啥呢?它是个在线工具,不用你搭环境,打开网页就能用。支持批量下载公众号文章,而且 HTML 格式能百分百还原原文排版,跟你在微信里看一摸一样。不光能下文章正文,阅读量、评论数、转发量这些数据也能一并抓下来,对于作数据分析的朋友来说,简直是福音。

功能这块,我给你数数。它支持按关键词搜公众号,也能在公众号内部按标题搜文章。导出格式特别全,HTML、JSON、Excel、TXT、Markdown、Word 都有,你想咋用就咋用。还能按时间、作者、原创标识这些条件过滤,精准定位你要的内容。合集下载也支持,内嵌的音视频也能扒下来,基本上你能想到的需求,它都覆盖到了。

好,下面说正事,怎么安装和使用。

最简单的用法是在线直接用。作者之前部署了个在线网站,打开就能扫码登录。不过要提醒你一下,这个项目在今年七月底已经停止维护了,微信那边的接口被官方关了,在线网站的域名到十月底也会到期。所以如果你现在还想用,建议私有化部署,把主动权握在自己手里。

本地部署其实也不复杂。首先你得有 Node.js 环境,版本要 v22 或者更高。然后装个 Yarn 包管理器。

第一步,先把代码拉下来:

git clone https://github.com/wechat-article/wechat-article-exporter.git cd wechat-article-exporter

第二步,装依赖:

yarn install

如果网络超时,可以加个参数:

yarn install --network-timeout 600000

或者用 npm install 也行,效果一样。

第三步,启动服务:

yarn dev

等终端显示 Listening on http://localhost:3000,你就可以打开浏览器访问了。如果 3000 端口被占用了,换个端口:

yarn dev --port 8080

打开页面之后,你会看到个扫码登录的按钮。用微信扫一下,选择你自己的公众号登录。这里要注意,必须选公众号登录,小程序登录是不行的。

登录成功之后,在左上角可以切换公众号,输入你想下载的公众号名称或者关键词,系统会自动搜出来。找到目标之后,点进去就能看到文章列表了。

再下载之前,你可以先配置一下。比如选择导出格式,HTML 是默认的,能完整保留样式。如果你要 Excel 做数据分析,或者 Word 方便编辑,也可以勾选。还能设置时间范围、过滤条件,只下载原创的,或者只下载某个时间段的文章。

都选好了,点"开始下载"就行。系统会自动批量处理,你能实时看到进度。下载下来的文章,HTML 格式的直接双击就能在浏览器打开,跟原文几乎没差别。图片、样式都打包在里面,离线也能看。

如果你要导出评论和阅读量这些数据,稍微麻烦一点,需要配合抓包工具获取 credentials 信息。具体步骤项目的文档里有详细说明,跟着做就行,不难。

对于想更稳定使用的朋友,推荐用 Docker 部署。一条命令就能跑起来:

docker run -p 3000:3000 ghcr.io/wechat-article/wechat-article-exporter:latest

或者你自己 build 一个镜像:

yarn docker:build docker run -p 3000:3000 wechat-article-exporter-local

这样部署在本地或者服务器上,不用担心域名到期的问题,数据也存在自己手里,更塌实。

这个项目用的是 MIT 协议,完全开源免费。虽然官方接口关了,项目也归档了,但代码还在,文档也在,你完全可以 fork 一份自己研究、二次开发。对于想学习这类工具原理的朋友,参考价值还是很大的。

它的工作原理其实挺有意思。微信公众后台写文章的时候,支持搜索其他公众号的文章,这个项目就是利用这个入口,模拟搜索然后抓取文章列表和内容。思路很巧妙,可惜微信后来把这个接口收紧了。

总的来说,wechat-article-exporter 曾经是个非常实用的工具,帮无数运营人、研究者、自媒体作者解决了文章备份的难题。虽然现在不能像以前那样开箱即用,但它的代码和思路依然值得学习。如果你正好有类似需求,不妨把项目 clone 下来看看,说不定能给你一些启发。

GitHub地址:https://github.com/wechat-article/wechat-article-exporter

相关学习资料

返回首页浏览学习资料