我用这个14.1K Star的开源工具,一键发布抖音、B站、小红书、视频号

一条视频处理完,要打开抖音、B站、小红书、视频号挨个登录、填标题、选封面、点发布。四个平台跑完要花费一定的时间。

市面上不是没有解决方案,有收费的分发工具,月费从几十到几百不等。但这类工具有两个问题:一是没法集成进自己的工作流;二是出了问题你不知道哪里断了,只能等客服。

后来我找到了 social-auto-upload,GitHub 上 14.1K Star、2.3K Fork 的开源项目,作者本人的原话是:

“生命短暂,能用就用。”

它是怎么工作的

核心是 Playwright——一个可以控制真实浏览器的自动化框架。

用大白话说:它会帮你打开一个真实的 Chrome,然后模拟你的鼠标和键盘操作,自动登录、填写信息、上传视频、点击发布。

整个过程跟你手动操作一模一样,只是换成了代码在做。

目前支持:抖音、Bilibili、小红书、快手、视频号、百家号、TikTok 以及 YouTube 等,我自己用的是前四个,就是你们现在看到截图里的这个界面——四个平台登录状态全绿,一键全发。

我踩的最大的坑:绝对不能用无头模式

Playwright 有两种运行方式。一种是有头模式,会弹出一个真实的浏览器窗口,你能看见它在操作;另一种是无头模式(headless),后台静默跑,不弹窗口。

我第一次配的时候图省事,直接开了无头模式。作者也说了,小红书平台风控严格,尽可能采用有头模式。

结果不到几个小时,小红书给我发了账号异常警告。

这不是玄学,有技术原因的。

无头浏览器和真实浏览器在底层有很多细微的差别:window.__playwright__binding__ 这类全局变量会暴露自动化框架的存在;Canvas 指纹、WebGL 渲染结果不一样;字体列表、屏幕分辨率等环境参数也不一致。平台的风控系统会同时检测这些信号,命中几个就会触发异常判断。

有人专门做过测试,无头模式下这些特征几乎全都泄露。改成有头模式之后,这些信号基本消失,对平台来说就是”一个人在操作浏览器”。

代码层面就是一行的区别:

# 这样会被识别 browser = await playwright.chromium.launch(headless=True)  # 这样更安全 browser = await playwright.chromium.launch(headless=False) 

改完之后我没有再尝试了,毕竟我也怕我的小红书被影响。

实际用下来的感受

省时间是真的。 不用每个平台操作一遍,现在填完信息等它跑完,几分钟就发布了。

定时发布也能用。 可以设定发布时间,但是我只成功了视频号,也懒得调试了。

Cookie 持久化,不用每次扫码。 第一次扫码登录各平台之后,Cookie 会保存到本地,之后直接复用,但是视频号如果其它地方登录,好像就失效了。

出了问题自己能查。 因为是开源代码,哪个平台的上传逻辑出问题了,去 issues 里找,或者自己看代码改。这是收费工具给不了的,现在AI时代,也容易修改。

几个要注意的地方

账号安全。 自动化操作本质上是平台的灰色地带。不要上来就把主力账号挂上去,先用小号测试,稳了再切换。频率也不要搞太高,模拟正常人的节奏。

无头模式一定不要用。 这是最容易踩的坑,上面说了,用有头模式。

平台会更新页面结构。 有时候平台改了发布页面的元素,脚本会失效。这时候去 GitHub Issues 看看,通常有人已经提出来并给了修复方案。

Python 环境要装好。 用的是 Python + Playwright,环境配置有一定门槛,不熟悉命令行的人需要一点时间。

值得关注的是

14.1K Star 这个数字背后,意味着有相当多的内容创作者和运营团队在用这套方案。它的 Issues 里能看到各种真实场景的反馈,有踩坑的、有贡献代码的,整个社区还算活跃。

国内短视频代运营市场规模已经很大了,但绝大多数工具要么收费、要么闭源、要么没法集成进自己的系统。这个项目填的就是这个空白。

如果你在做多平台内容分发,这是目前我尝试过的最好的开源方案。

项目地址:https://github.com/dreammis/social-auto-upload

P.S. 用了无头浏览器被小红书警告这件事,我是吃过亏才知道的。技术细节不难,但踩坑的时间成本不低。希望这篇能帮你少走一点弯路。

请登录后发表评论

    没有回复内容