dreammis发布social-auto-upload
速览
该项目通过Python脚本实现视频到抖音、小红书、视频号、TikTok、YouTube和Bilibili等主流平台的自动化上传。它支持批量处理和多平台同步发布,显著提升了内容创作者的运营效率,适用于需要高频跨平台分发的自媒体团队或个人博主。
AI 深度解读
这是什么
social-auto-upload 是一个基于 Python 开发的开源自动化工具,旨在帮助内容创作者和运营者实现视频及图文内容在多个主流社交媒体平台的一键分发。该项目目前 GitHub 星标数已突破 11,000,拥有庞大的开发者与用户社群。
项目核心架构正在经历重大重构,从早期的直连 uploader 模块转向更稳定、隐蔽的 patchright 驱动模式。通过统一的 CLI 接口(sau)和面向 AI Agent 的 Skill 封装,它致力于解决跨平台内容发布的繁琐流程,支持抖音、Bilibili、小红书、快手、视频号、百家号以及 TikTok 等平台。
解决的问题
- 跨平台发布效率低下:传统模式下,创作者需逐个登录不同平台后台,手动上传、填写标题、描述和标签,过程重复且耗时。
- AI Agent 执行稳定性差:直接使用 LLM 或 Browser Agent 进行网页操作时,Agent 往往需要实时解析 DOM、截图理解页面,临场判断成本高且容易因页面结构微调而失效。
- 自动化维护成本高:通用爬虫或自动化脚本在面对平台反爬机制时,容易因指纹暴露或行为异常被封禁。
- 环境配置复杂:对于非技术人员,安装依赖、配置浏览器驱动、处理登录二维码等环节存在较高门槛。
social-auto-upload 将高频、重复的上传工作交给经过验证的脚本执行,而非依赖不稳定的 Agent 实时推理,从而提升发布的确定性和效率。
核心功能
- 多平台支持:
- 国内平台:抖音、Bilibili、小红书、快手、视频号、百家号。
- 海外平台:TikTok。
- 内容类型:支持视频上传(Video)和图文笔记上传(Note/Image)。
- CLI 统一接口 (
sau):- 提供标准化的命令行工具,支持账号管理、状态检查、视频/图文上传。
- 示例命令:
sau douyin upload-video --account <name> --file video.mp4 --title "Title"。 - 支持多账号并发执行,每个
account_name对应独立的账号配置文件。
- AI Agent 友好集成:
- 专为 OpenClaw、Codex、Claude Code 等 AI 编程助手设计。
- 提供预置的
skills/目录,引导 Agent 优先使用uv安装、sauCLI 执行,并自动验证平台入口可用性。 - 包含针对各平台的独立 Skill 文件(如
Douyin Upload Skill),简化 Agent 调用逻辑。
- 底层技术升级:
- 采用
patchright驱动替代传统 Selenium/Playwright 直连,显著提升浏览器自动化过程的兼容性与隐蔽性。 - 主推 Headless(无头模式),适合服务端、定时任务和 Agent 场景,避免弹出可见窗口。
- 采用
- 自动依赖管理:
- Bilibili 上传能力基于
biliup封装,首次运行时自动下载并更新biliup,无需用户手动安装。
- Bilibili 上传能力基于
亮点 / 与同类相比
-
从“临场推理”转向“确定性执行”: 与直接使用 AI Agent 截图解析网页不同,本项目通过预定义的
uploader模块和 CLI 指令执行上传。这种“脚本化”方式避免了 Agent 在复杂网页结构中的幻觉和误判,更适合高频、标准化的上传任务。 -
隐蔽性与稳定性优化: 重构后引入
patchright驱动,旨在降低平台检测风险。相比传统自动化方案,其在模拟真实用户行为和环境指纹方面做了更多优化,有助于减少账号被封禁的概率。 -
原生支持 AI Agent 工作流: 项目不仅是一个工具,更是一个“Agent 就绪”的资源。通过提供结构化的 Prompt 和 Skill 文件,它降低了将 AI 编程助手接入实际业务流的难度,实现了“仓库 + 提示词”即插即用的体验。
-
CLI 与 Skill 双轨并行: 既保留了传统的命令行操作供开发者直接调用,又通过
skills/目录适配 AI 代理,兼顾了技术极客和普通用户的不同需求。
适合谁用 / 上手
适合人群:
- 自媒体运营者:需要在多个平台同步发布视频或图文,追求效率。
- 独立开发者 / 技术爱好者:希望利用 AI Agent 辅助完成重复性技术工作,或对自动化脚本感兴趣。
- AI 应用开发者:正在构建基于 LLM 的自动化工作流,需要稳定的浏览器自动化后端。
上手指南:
-
环境准备:
- 推荐使用
uv进行依赖管理。 - 确保已安装 Python 环境。
- 推荐使用
-
安装与初始化:
- 克隆仓库:
git clone https://github.com/dreammis/social-auto-upload.git - 进入目录并安装依赖。
- 克隆仓库:
-
使用 AI Agent 快速部署(推荐):
- 将仓库地址及项目提供的“Agent Bootstrap Prompt”发送给 OpenClaw、Codex 或 Claude Code。
- Agent 将自动执行安装、配置
sauCLI 并验证平台连通性。
-
手动 CLI 使用:
- 登录:
sau <platform> login --account <account_name>(如抖音、Bilibili 建议本地终端扫码登录)。 - 检查状态:
sau <platform> check --account <account_name>。 - 上传视频:
sau <platform> upload-video --account <account_name> --file video.mp4 --title "标题" --desc "简介"。 - 上传图文:
sau <platform> upload-note --account <account_name> --images img1.png img2.png --title "标题" --note "正文"。
- 登录:
-
注意事项:
- 当前主线优先使用
sauCLI,历史直连examples/下的 Python 脚本仅作为调试参考。 - Web 端界面代码已非主线,不建议依赖。
- 定时发布逻辑默认基于“第二天”计算,如需即时发布需自定义脚本。
- 当前主线优先使用
