偶然听朋友提到一个需求:微信视频号里的内容都能看,但想把某个作者的视频批量保存下来,同时留下每条内容的点赞、收藏、评论和转发数,就比较麻烦了。
一个作者只有几条内容时,怎么处理都行。如果已经发了几百条,靠手工一条条保存,光是复制链接就很折腾。
我先去 GitHub 找现成方案,找到了开源项目 ltaoo/wx_channels_download。
原项目 README 里还提供了一个配套的在线解析网站。
我拿一条视频号分享链接试了一下。把链接粘贴进去,网站能返回视频信息和下载地址,处理一两条很方便。

但它有一个很实际的限制:需要先拿到每条内容的标准分享链接。几百条内容就要复制几百次,而且有些视频根本没有链接。
所以我又顺着源码继续往下看。我发现,这个项目除了在线解析,还提供了一套本地运行方式,可以直接读取视频号作者主页的分页内容。这就意味着,不用再一条条复制分享链接,批量处理是可以做的。
这个本地工具是怎么工作的
本地工具启动后,会在电脑上运行 API 服务和代理服务。用白话讲,就是在自己电脑里搭一个临时中转站。
API 服务负责接收下载和导出任务,代理服务负责识别电脑版微信里的视频号页面。程序会临时设置系统代理,让微信的相关页面经过这个中转站,再把“批量任务”按钮加到作者主页上。
当我们打开一个作者主页时,微信页面本身就会分页获取这个作者的 Feed 数据。Feed 可以简单理解成“这一页内容的资料包”,里面已经有视频 ID、标题、发布时间、点赞数、收藏数、评论数、转发数、时长和当前可用的播放信息。
工具做的事,是把页面已经拿到的这些分页数据整理起来,交给本地服务下载、去重和导出。
我在原项目上补了什么
这次二次开发有一个很好的起点。原项目已经做好了本地代理、证书安装、微信页面注入、单条视频捕获和下载,也有作者主页的批量下载雏形。
这些基础能力解决了接入微信视频号的问题。在这个基础上,我重新梳理了作者主页的批量流程,把原来更偏“下载视频”的功能,做成了一个可以选数量、跳过重复内容、继续上次进度、累计导出数据的批量任务。
接下来,我把实际使用时容易卡住的几个细节逐个处理了:
- 选 20 条时,准确处理 20 条新内容。
- 已经下载的视频可以跳过,也可以重新下载。
- 第二次运行时,可以接着上一次的进度继续。
- 多次导出始终维护同一份累计数据。
- Windows 和 macOS 用户不用自己配开发环境。
数量、导出内容、重复处理和完成行为放在“批量任务”弹窗里,续跑、累计数据和文件整理由本地程序处理。

现在可以怎么选
数量可以选 20、50、100、全部,也可以自定义。
任务内容有三种:只导出数据、导出视频和数据、只导出视频。已经下载过的内容,可以选择跳过,也可以重新下载。当前选定的数量处理完后,可以自动停止,也可以继续下一批。
这里有一个我反复调整过的细节:选择“跳过”时,已下载视频不会占用本次数量。
例如第一次先处理 5 条,第二次选 20 条,程序会跳过前 5 条,继续处理第 6—25 条。最后累计数据文件里是 25 条,而不是只多出 15 条。
下载失败的任务不会被当成“已下载”。想让第二次继续上一次进度,不要清空下载记录。
下载和启动
因为知识星球长文章没看到附件上传入口,所以我把三个安装包放到了百度网盘:点击下载,提取码 9999。
按电脑的系统和芯片下载对应版本:
- macOS Apple 芯片:
wechat_channels_download_mac_apple.zip - macOS Intel 芯片:
wechat_channels_download_mac_intel.zip - Windows 64 位:
wechat_channels_download_win.zip
Windows
Windows 用户解压安装包后,双击 wx_video_download.exe。系统弹出管理员权限确认时,点击允许。

看到 API 服务、代理服务启动成功,并提示“使用期间不要关闭终端”,就可以打开电脑版微信了。

macOS
Apple 芯片和 Intel 芯片的操作方式一样:解压对应的安装包,双击 start.command 启动。

终端会请求 Mac 登录密码。输入时屏幕上不会显示字符,这是正常现象,输完按回车就行。

看到 API 服务、代理服务启动成功,就说明程序可以使用了。

使用期间不要关闭终端窗口。然后打开电脑版微信,进入一个视频号作者主页,就能看到“批量任务”按钮。
使用完后,在终端里按 ctrl + C,让程序正常关闭并恢复系统代理。不要直接强制退出。
视频和数据怎么保存
视频和数据会下载到系统的“下载”目录,每个视频号使用一个独立文件夹:
下载/视频号名称/
这个作者的数据文件保存在:
下载/视频号名称/作者名_视频数据.csv


几个常见问题
macOS 为什么要输入密码?
程序需要安装或使用本地证书,并临时设置系统代理,所以需要管理员权限。输入的是 Mac 登录密码,终端不显示字符是系统的正常安全设计。
为什么退出后网络会短暂卡顿?
运行期间,HTTP/HTTPS 流量会临时经过电脑上的本地代理。程序退出时会关闭代理,微信和浏览器已有的连接需要重新建立,所以可能会短暂卡一下。
建议启动一次后把当前需要的任务做完,再统一退出,不要每导一批就重启程序。
第二次导出怎么接着上一次?
选择“导出视频+数据”和“跳过”,同时保留下载记录。程序会识别已经处理过的视频,接着往后走。
如果只选“导出数据”,因为没有下载记录作为进度,下次仍然会从前面开始读取。不过累计数据文件会按视频 ID 去重,不会反复增加相同的行。
一次可以直接选“全部”吗?
不建议一上来就对大几百上千条内容选择“全部”。先用小号测试,数量选 20 或 50,确认页面、下载和数据文件都正常,再慢慢增加。
没有人能保证这类操作零风险。不要在短时间内反复刷新、导出和重新下载。如果微信出现验证、异常登录或风险提示,立即停止。尽量使用小号测试,也只处理自己有权使用的内容。