social-auto-upload 实操手册:装一次环境,跑通三个平台的视频批量上传
【免费下载链接】social-auto-upload自动化上传视频到社交媒体:抖音、小红书、视频号、tiktok、youtube、bilibili项目地址: https://gitcode.com/GitHub_Trending/so/social-auto-upload
同一条视频,要发抖音一次、小红书一次、B 站一次,每个后台的入口和流程都不一样,手动重复传最容易漏标题和分区。social-auto-upload 把这类重复分发变成命令行:它驱动本地浏览器完成登录、上传和定时发布,支持多平台视频批量上传与图文分发,适合运营多个账号的创作者和团队。
先看能干什么
先拿这张表对照自己要发什么,避免花二十分钟装环境,结果发现平台不支持。
| 平台 | 视频 | 图文 | 定时发布 | CLI |
|---|---|---|---|---|
| 小红书 | ✅ | ✅ | ✅ | ✅ |
| 抖音 | ✅ | ✅ | ✅ | ✅ |
| 快手 | ✅ | ✅ | ✅ | ✅ |
| Bilibili | ✅ | ❌ | ✅ | ✅ |
| 视频号 | ✅ | ❌ | ✅ | ✅ |
| TikTok | ✅ | ❌ | ✅ | ❌ |
CLI 还覆盖知乎、YouTube、微博等平台,支持范围以 docs/CLI.md 为准。Bilibili 和视频号不发图文,主打图片内容的优先看小红书和抖音。
装好并跑通
最短路径就三步:装环境、装浏览器驱动、登录一个平台。跑通之后,其余平台都是同一套命令换平台名。
git clone https://gitcode.com/GitHub_Trending/so/social-auto-upload cd social-auto-upload uv venv source .venv/bin/activate # Windows 改用 .venv\Scripts\activate uv pip install -e .用uv建隔离的虚拟环境并以可编辑模式安装,装完sau命令就能用了;Windows 走 PowerShell,激活那行换一下写法。
PLAYWRIGHT_DOWNLOAD_HOST="https://npmmirror.com/mirrors/playwright" patchright install chromium cp conf.example.py conf.py项目用patchright驱动浏览器,第一条命令走国内镜像下载 Chromium 驱动,免去直连卡住的问题;第二条生成本地配置文件,默认值就能起步,先不用改。
sau douyin login --account creator sau douyin check --account creatorlogin 弹出登录页,成功后 cookie 落到本地文件,后续命令直接复用;check 用来确认会话还有效。creator是自取的账号别名,多账号就靠它区分。顺手敲sau --help,能看到全部平台子命令。
三个平台怎么发
登录一次,cookie 后面直接复用;三个平台都是 login、check、upload 三步走。
抖音
sau douyin upload-video --account creator --file videos/demo.mp4 --title "标题" --desc "简介" sau douyin upload-note --account creator --images videos/demo1.png videos/demo2.png --title "图文标题" --note "正文"视频走 upload-video,图文走 upload-note,正文放在--note。上传中若触发短信二次验证,程序优先读项目根目录的verify_code.txt,交互式运行时也可以直接在终端输入验证码。
小红书
sau xiaohongshu upload-video --account creator --file videos/demo.mp4 --title "标题" --desc "简介" sau xiaohongshu upload-note --account creator --images videos/demo1.png videos/demo2.png --title "笔记标题" --note "笔记正文"小红书的 cookie 相对容易失效,发布前养成先 check 的习惯;提示 cookie 缺失就重新 login 一次,不用重建环境。
Bilibili
sau bilibili upload-video --account creator --file videos/demo.mp4 --title "标题" --desc "简介" --tid 249Bilibili 只发视频,没有图文。最容易漏的是--tid分区参数:不填会落到默认分区,分区不对,推荐流量池也不对,249 是体育-足球,按内容选对应编号。首次运行会自动下载 biliup,不用手动装;终端里二维码显示不全时,打开当前目录的qrcode.png扫码即可。
排期与批量
不想立刻发布时加--schedule,格式固定为「年-月-日 时:分」:
sau douyin upload-video --account creator --file videos/demo.mp4 --title "标题" --desc "简介" --schedule "2026-12-01 18:00"命令提交后即刻返回,平台按这个时间实际放出。个别平台(如大鱼号)对定时时间窗口还有额外约束,用--help查看对应说明。
整目录批处理可以参考仓库里的 examples/upload_video_to_bilibili.py:扫出 videos/ 下所有 mp4,逐个算好发布时间再调sau。骨架就是一个循环:
from pathlib import Path import subprocess for i, f in enumerate(sorted(Path("videos").glob("*.mp4"))): command = ["sau", "bilibili", "upload-video", "--account", "creator", "--file", str(f), "--title", f.stem, "--tid", "249", "--schedule", f"2026-12-01 {10 + i}:00"] subprocess.run(command, check=True)把命令开头两个 token 换成别的平台,其余部分原样可用。
出问题时看这里
登录失败或 cookie 过期:先跑 check 确认状态,无效就重新 login。需要手动导出 cookie 时,把浏览器扩展的导出格式选成 JSON:
驱动下载慢:patchright 的 chromium 和 biliup 都是首次安装才下载,走镜像、挂后台等通常能过去;biliup 慢时可以代理辅助获取。
多账号并用:一个
--account别名对应一份cookies/<平台>_<别名>.json,别名建好互不覆盖,多账号可并行上传,会话不会串。
代码长什么样
项目按平台分层,入口很薄,排完问题再回头看结构会更快:
- sau_cli.py:CLI 唯一入口,解析子命令并分发给对应平台模块。
- sau_commands/:各平台的参数定义与执行逻辑,一个平台一个文件。
- uploader/:上传流程的具体实现,按平台分目录,如 douyin_uploader、bilibili_uploader。
- docs/CLI.md:全平台参数说明,想看某个选项的细节查这里。
这套工具适合做内容分发的场景:个人多账号矩阵、代运营多平台的团队都可以直接拿去用。建议先跑一条sau douyin check确认环境通了,再按上面的表格扩展到小红书和 Bilibili,命令形状都一样。
【免费下载链接】social-auto-upload自动化上传视频到社交媒体:抖音、小红书、视频号、tiktok、youtube、bilibili项目地址: https://gitcode.com/GitHub_Trending/so/social-auto-upload
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考