| 1 | # social-auto-upload |
| 2 | |
| 3 | `social-auto-upload` 是一个强大的自动化工具,旨在帮助内容创作者和运营者高效地将视频内容一键发布到多个国内外主流社交媒体平台。 |
| 4 | 项目实现了对 `抖音`、`Bilibili`、`小红书`、`快手`、`视频号`、`百家号`、`TikTok` 以及 `YouTube` 等平台的视频上传、定时发布等功能。 |
| 5 | 结合各平台 `uploader` 模块,您可以轻松配置和扩展支持的平台,并通过示例脚本快速上手。 |
| 6 | |
| 7 | <img src="media/show/tkupload.gif" alt="tiktok show" width="800"/> |
| 8 | |
| 9 | ## 💎 赞助商 |
| 10 | |
| 11 | <table width="100%"> |
| 12 | <tr> |
| 13 | <td width="25%" align="center" valign="middle"> |
| 14 | <a href="https://chilltion.com/?ref=1y5k5k"> |
| 15 | <img src="static/DolOffer.png" alt="DolOffer Sponsor" width="180"> |
| 16 | </a> |
| 17 | </td> |
| 18 | <td width="75%" align="left" valign="middle"> |
| 19 | 感谢 <a href="https://doloffer.com/" target="_blank">DolOffer</a> 对本项目的支持!对于做内容矩阵、多平台分发和 AI 自动化运营的创作者来说,ChatGPT、Claude、YouTube Premium、Spotify、Apple Music、Notion、Office 等数字工具往往是长期成本。DolOffer 提供 AI、视频、音乐和效率工具相关的订阅与充值服务,帮助用户更低成本地配置常用数字产品。更多说明可查看 <a href="https://github.com/Doloffer-g/guide" target="_blank">DolOffer Guide</a>。使用优惠码 <code>AI8888</code> 可额外享受 9 折优惠,具体价格和服务规则以官网为准。 |
| 20 | </td> |
| 21 | </tr> |
| 22 | <tr> |
| 23 | <td width="25%" align="center" valign="middle"> |
| 24 | <a href="https://chilltion.com/?ref=1y5k5k"> |
| 25 | <img src="static/chilltion.png" alt="chilltion Sponsor" width="180"> |
| 26 | </a> |
| 27 | </td> |
| 28 | <td width="75%" align="left" valign="middle"> |
| 29 | 轻视AI:一句话生产MG动画,适合知识,科普,讲解,教程,介绍等类型视频的低成本制作,视频矩阵,养号等,成本只有seedance等1%。现在<a href="https://chilltion.com/?ref=1y5k5k">注册</a>送1500积分 |
| 30 | </td> |
| 31 | </tr> |
| 32 | <tr> |
| 33 | <td width="25%" align="center" valign="middle"> |
| 34 | <a href="http://t.clawpower.vip/1005"> |
| 35 | <img src="static/clawpower.png" alt="ClawPower Sponsor" width="180"> |
| 36 | </a> |
| 37 | </td> |
| 38 | <td width="75%" align="left" valign="middle"> |
| 39 | ClawPower 是一家稳定可靠 AI 大模型中转服务商,提供 Claude、GPT、Gemini 60+ 大模型接入。无论是 OpenClaw、Hermes 智能体自动化场景,Claude Code、Codex 编程工具接入,还是公众号、小红书内容创作;都能获得稳定、顺滑、可长期使用的模型服务体验。低至官方价格的 30%,点击<a href="http://t.clawpower.vip/1005">免费领取 5 刀现金</a>体验券 |
| 40 | </td> |
| 41 | </tr> |
| 42 | <tr> |
| 43 | <td width="25%" align="center" valign="middle"> |
| 44 | <img src="static/wechat.png" alt="Sponsor Contact" width="150"> |
| 45 | </td> |
| 46 | <td width="75%" align="left" valign="middle"> |
| 47 | <strong>成为赞助商</strong><br> |
| 48 | 如果您有意赞助本项目,请扫描左侧微信二维码(添加时请注明来意:<strong>赞助</strong>)。 |
| 49 | </td> |
| 50 | </tr> |
| 51 | </table> |
| 52 | |
| 53 | --- |
| 54 | |
| 55 | |
| 56 | ## 目录 |
| 57 | |
| 58 | - [💡 功能特性](#功能特性) |
| 59 | - [💾 安装指南](#安装指南) |
| 60 | - [🤖 AI Agent](#agent) |
| 61 | - [🏁 快速开始](#快速开始) |
| 62 | - [🗂️ 重构计划](#%EF%B8%8F重构计划) |
| 63 | - [📣 近况说明](#近况说明) |
| 64 | - [🐇 项目背景](#项目背景) |
| 65 | - [📃 详细文档](#详细文档) |
| 66 | - [🐾 交流与支持](#交流与支持) |
| 67 | - [🤝 贡献指南](#贡献指南) |
| 68 | - [📜 许可证](#许可证) |
| 69 | - [⭐ Star History](#star-history) |
| 70 | |
| 71 | ## 💡功能特性 |
| 72 | |
| 73 | | 平台 | 登录/账号准备 | 视频上传 | 图文上传 | 定时发布 | CLI | Skill | 说明 | |
| 74 | | --- | --- | --- | --- | --- | --- | --- | --- | |
| 75 | | 抖音 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 当前主线重构最完整 | |
| 76 | | Bilibili | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | 运行时自动准备 `biliup` | |
| 77 | | 小红书(浏览器版) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 浏览器自动化,CLI/Skill 已接入 | |
| 78 | | 快手 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 浏览器自动化,CLI/Skill 初版已接入 | |
| 79 | | 视频号 | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | 对应 `tencent_uploader` | |
| 80 | | 百家号 | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | 浏览器自动化 | |
| 81 | | TikTok | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | 当前示例走 Chrome 版实现 | |
| 82 | | YouTube | ✅ | ✅ | ❌ | ❌ | ✅ | ❌ | 浏览器自动化(Studio),支持加入播放列表/可见性 | |
| 83 | |
| 84 | ### AI这么强,为什么还需要这个项目 |
| 85 | 在你使用AI的能力,browser agent等等,每次都让 agent 重新解析网页、截图理解, 临场判断 |
| 86 | 该项目经过大量验证,上传这种 高频,重复,无聊的工作交给脚本和程序去执行 |
| 87 | |
| 88 | |
| 89 | ## 💾安装指南 |
| 90 | |
| 91 | ### 自己上手使用 |
| 92 | 如果你只是普通用户,不准备借助 agent 客户端,直接看 |
| 93 | |
| 94 | 安装、更新、环境准备已经统一收敛到文档: |
| 95 | |
| 96 | - [安装说明](./docs/install.md) |
| 97 | - [更新说明](./docs/update.md) |
| 98 | |
| 99 | |
| 100 | ### AGENT |
| 101 | |
| 102 | ``` |
| 103 | AI的发展毋庸置疑,希望你遇到这种安装和使用,不要再怯场,而是交给各种AI Agent来协助你 |
| 104 | ``` |
| 105 | |
| 106 | 如果你准备把这个仓库直接交给 `OpenClaw`、`Codex`、`Claude Code` 来安装和使用 |
| 107 | |
| 108 | 先把仓库给 agent,再把这份启动提示词一起发给它: |
| 109 | |
| 110 | - [Agent Bootstrap Prompt](./docs/agent-bootstrap.md) |
| 111 | |
| 112 | 这份提示词会引导 agent: |
| 113 | |
| 114 | - 优先按当前主线安装项目 |
| 115 | - 优先使用 `uv`、`sau` CLI 和 `skills/` |
| 116 | - 先验证 `bilibili`、`douyin`、`kuaishou`、`xiaohongshu` 四个平台入口是否可用 |
| 117 | |
| 118 | |
| 119 | ### 补充说明: |
| 120 | |
| 121 | - CLI 使用请看:[CLI 使用说明](./docs/CLI.md) |
| 122 | - 如果你准备在 `OpenClaw`、`Codex`、`Claude Code / cc` 里使用本项目,先看:[Agent Bootstrap Prompt](./docs/agent-bootstrap.md) |
| 123 | - agent / skill 请看:[Douyin Upload Skill](./skills/douyin-upload/SKILL.md) |
| 124 | - agent / skill 请看:[Kuaishou Upload Skill](./skills/kuaishou-upload/SKILL.md) |
| 125 | - agent / skill 请看:[Xiaohongshu Upload Skill](./skills/xiaohongshu-upload/SKILL.md) |
| 126 | - agent / skill 请看:[Bilibili Upload Skill](./skills/bilibili-upload/SKILL.md) |
| 127 | - 历史 Web 说明请看:[历史 Web 版本说明](./docs/legacy-web.md) |
| 128 | - 其他单平台 skill 与整合型 skill 仍在开发中 |
| 129 | - `requirements.txt` 目前主要用于历史兼容路径,普通用户不需要优先使用它 |
| 130 | |
| 131 | |
| 132 | ## 📣近况说明 |
| 133 | |
| 134 | `2026.03.24` |
| 135 | |
| 136 | 最近我的重心一直都在创业上,而且手里还有一些项目没完全跑通,所以这个仓库前面有很长一段时间,我确实没有办法投入特别多精力去持续维护。 |
| 137 | |
| 138 | 这个项目不知不觉已经 `9k+ star` 了,社群里也已经有 `2000+` 小伙伴了。看到它真的在持续帮到大家,我心里还是挺开心的,也是真的很感谢大家一直以来的支持、反馈。 |
| 139 | |
| 140 | 所以我想,决定先停一下,抽一段时间出来,把这个项目好好重构和优化一轮。 |
| 141 | |
| 142 | 接下来这段时间,这个仓库应该会进入一个相对密集更新的阶段。我现在最想先做的事情主要有这几件: |
| 143 | |
| 144 | 1. 使用更隐蔽、更稳定的自动化方案,尽量降低平台检测风险 |
| 145 | 2. 补齐一些常用平台的图文能力,并逐步完成 CLI 化、Skill 化 |
| 146 | 3. 陆续测试并上架到更多 skill 平台,让大家的龙虾、螃蟹、毛毛虫都能打通 AI 自媒体的最后一道关 |
| 147 | |
| 148 | 所以如果你之前觉得这个项目更新有点慢,哈哈哈,后面大概率会快很多。也欢迎大家继续关注,最近应该会是一段持续修、持续更、持续重构的阶段。 |
| 149 | |
| 150 | ## 🗂️重构计划 |
| 151 | |
| 152 | 项目正在进行一轮整体重构,当前重构重点是: |
| 153 | |
| 154 | - 各平台 uploader 的结构收敛 |
| 155 | - CLI 统一接入 |
| 156 | - 面向 OpenClaw、Codex、 Claude Code 等工具的 skill 化 |
| 157 | - 更换为 `patchright` 驱动,提升兼容性与隐蔽性 |
| 158 | - 主线优先围绕无头模式推进 |
| 159 | |
| 160 | “无头模式(headless)”,指的是浏览器在后台运行,不弹出可见窗口,但自动化流程仍然会照常执行。这样更适合 CLI、服务端、自动任务和 agent 场景。 |
| 161 | |
| 162 | Web 端相关代码仍然保留,但已经不是当前主线,不保证可直接运行,也不保证与当前 uploader/CLI 完全同步。 |
| 163 | |
| 164 | |
| 165 | ## 🏁快速开始 |
| 166 | |
| 167 | ### 方式 1:使用 CLI |
| 168 | |
| 169 | 当前抖音、快手、小红书、Bilibili 已经接入 CLI: |
| 170 | |
| 171 | ```bash |
| 172 | sau douyin login --account <account_name> |
| 173 | sau douyin check --account <account_name> |
| 174 | sau douyin upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --desc "示例简介" |
| 175 | sau douyin upload-note --account <account_name> --images videos/1.png videos/2.png --title "图文标题" --note "图文正文" |
| 176 | |
| 177 | sau kuaishou login --account <account_name> |
| 178 | sau kuaishou check --account <account_name> |
| 179 | sau kuaishou upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --desc "示例简介" |
| 180 | sau kuaishou upload-note --account <account_name> --images videos/1.png videos/2.png videos/3.png --title "图文标题" --note "图文正文" |
| 181 | |
| 182 | sau xiaohongshu login --account <account_name> |
| 183 | sau xiaohongshu check --account <account_name> |
| 184 | sau xiaohongshu upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --desc "示例简介" |
| 185 | sau xiaohongshu upload-note --account <account_name> --images videos/1.png videos/2.png videos/3.png --title "图文标题" --note "图文正文" |
| 186 | |
| 187 | sau bilibili login --account <account_name> |
| 188 | sau bilibili check --account <account_name> |
| 189 | sau bilibili upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tid 249 |
| 190 | |
| 191 | sau youtube login --account <account_name> |
| 192 | sau youtube check --account <account_name> |
| 193 | sau youtube upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tags tag1,tag2 --playlist "我的系列" --visibility public |
| 194 | ``` |
| 195 | |
| 196 | > YouTube 说明:登录是交互式的(Google 账号,浏览器里完成,无二维码)。这里走浏览器自动化而不是官方 API, |
| 197 | > 是因为**未通过 Google 合规审核的 API 项目上传的视频会被强制锁为私享、无法改公开**,对个人/单频道不实用; |
| 198 | > 浏览器自动化没有此限制,可直接发布公开视频,也与本项目其它平台的 cookie 方案一致。 |
| 199 | > `--playlist` 适合连载/系列追更;`--visibility` 可选 `public`/`unlisted`/`private`。 |
| 200 | > 上传会**等进度到 100% 再点发布**(浏览器上传靠窗口开着传,传一半就发布会被掐断卡在中途)。 |
| 201 | > youtube.com 被墙的地区:在 `conf.py` 设 `YT_PROXY = "http://127.0.0.1:7890"`(chromium 不吃系统代理,需显式指定)。 |
| 202 | |
| 203 | 补充说明: |
| 204 | |
| 205 | - `creator` 之类的名字只是示例值,真正含义是 `account_name` |
| 206 | - 一个 `account_name` 对应一个账号文件,可以准备多个账号,也可以按账号名并发执行任务 |
| 207 | - 抖音视频发布若触发短信二次验证,程序会优先读取项目根目录下的 `verify_code.txt`;如果你是在本地交互式终端手动运行 CLI,也可以直接按终端提示输入验证码 |
| 208 | - 浏览器平台统一约定: |
| 209 | - 视频使用 `title + desc + tags` |
| 210 | - 图文使用 `title + note + tags` |
| 211 | - Bilibili CLI 不要求用户手动安装 `biliup` |
| 212 | - 首次运行相关命令时,程序会自动下载 `biliup` |
| 213 | - 后续运行会自动检查上游 release 并更新 |
| 214 | - Bilibili 登录建议由用户自己在本地真实终端里执行;如果终端二维码显示不完整,可以直接打开当前目录下的 `qrcode.png` 扫码 |
| 215 | |
| 216 | ### 方式 2:使用 examples |
| 217 | |
| 218 | `examples/` 目录里同时存在两类脚本: |
| 219 | |
| 220 | - 当前主线 CLI 包装示例 |
| 221 | - 历史直连 uploader 示例 |
| 222 | |
| 223 | 对抖音、快手、小红书、Bilibili 来说,当前主线优先使用上面的 `sau ...` CLI。 |
| 224 | 下面这些脚本主要是历史直连 uploader 示例或调试入口: |
| 225 | |
| 226 | - `examples/upload_to_douyin.py` |
| 227 | - `examples/upload_video_to_bilibili.py` |
| 228 | - `examples/upload_to_kuaishou.py` |
| 229 | - `examples/upload_video_to_tencent.py` |
| 230 | - `examples/upload_video_to_baijiahao.py` |
| 231 | - `examples/upload_video_to_tiktok.py` |
| 232 | - `examples/upload_video_to_xiaohongshu.py` |
| 233 | |
| 234 | ## 🐇项目背景 |
| 235 | |
| 236 | 该项目最初是我个人用于自动化管理社交媒体视频发布的工具。我的主要发布策略是提前一天设置定时发布,因此项目中很多定时发布相关的逻辑是基于“第二天”的时间进行计算的。 |
| 237 | |
| 238 | 如果您需要立即发布或其他定制化的发布策略,欢迎研究源码或在社区提问。 |
| 239 | |
| 240 | ## 📃详细文档 |
| 241 | |
| 242 | 已落后,目前在快速重构该项目,当下,你需要做的是把这个仓库,发给你的AI agent:qwen code,codex cc,openclaw等等,让他们帮你安装和使用 |
| 243 | |
| 244 | 更详细的文档和说明,请查看:[social-auto-upload 官方文档](https://sap-doc.nasdaddy.com/) |
| 245 | |
| 246 | ## 🐾交流与支持 |
| 247 | |
| 248 | [☕ Donate as u like](https://www.buymeacoffee.com/hysn2001m) - 如果您觉得这个项目对您有帮助,可以考虑赞助。 |
| 249 | |
| 250 | 如果您也是独立开发者、技术爱好者,对 #技术变现 #AI创业 #跨境电商 #自动化工具 #视频创作 等话题感兴趣,欢迎加入社群交流。 |
| 251 | |
| 252 | ### Creator |
| 253 | |
| 254 | <table> |
| 255 | <td align="center"> |
| 256 | <a href="https://sap-doc.nasdaddy.com/"> |
| 257 | <img src="media/mp.jpg" width="200px" alt="NasDaddy公众号"/> |
| 258 | <br /> |
| 259 | <sub><b>微信公众号</b></sub> |
| 260 | </a> |
| 261 | <br /> |
| 262 | <a href="https://github.com/dreammis/social-auto-upload/commits?author=dreammis" title="Code">💻</a> |
| 263 | <br /> |
| 264 | 关注公众号,后台回复 `上传` 获取加群方式 |
| 265 | </td> |
| 266 | <td align="center"> |
| 267 | <a href="https://sap-doc.nasdaddy.com/"> |
| 268 | <img src="media/QR.png" width="200px" alt="赞赏码/入群引导"/> |
| 269 | <br /> |
| 270 | <sub><b>交流群 (通过公众号获取)</b></sub> |
| 271 | </a> |
| 272 | <br /> |
| 273 | <a href="https://sap-doc.nasdaddy.com/" title="Documentation">📖</a> |
| 274 | <br /> |
| 275 | 如果您觉得项目有用,可以考虑打赏支持一下 |
| 276 | </td> |
| 277 | </table> |
| 278 | |
| 279 | |
| 280 | |
| 281 | |
| 282 | ## 🤝贡献指南 |
| 283 | |
| 284 | 欢迎各种形式的贡献,包括但不限于: |
| 285 | |
| 286 | - 提交 Bug报告 和 Feature请求。 |
| 287 | - 改进代码、文档。 |
| 288 | - 分享使用经验和教程。 |
| 289 | |
| 290 | 如果您希望贡献代码,请遵循以下步骤: |
| 291 | |
| 292 | 1. Fork 本仓库。 |
| 293 | 2. 创建一个新的分支 (`git checkout -b feature/YourFeature` 或 `bugfix/YourBugfix`)。 |
| 294 | 3. 提交您的更改 (`git commit -m 'Add some feature'`)。 |
| 295 | 4. Push到您的分支 (`git push origin feature/YourFeature`)。 |
| 296 | 5. 创建一个 Pull Request。 |
| 297 | |
| 298 | ## 主要贡献者 |
| 299 | |
| 300 | <a href="https://github.com/dreammis/social-auto-upload/graphs/contributors"> |
| 301 | <img src="https://contrib.rocks/image?repo=dreammis/social-auto-upload" /> |
| 302 | </a> |
| 303 | |
| 304 | |
| 305 | ## 🙏致谢 |
| 306 | |
| 307 | 本项目的 Bilibili 上传能力基于开源项目 `biliup` 的能力进行接入与封装。 |
| 308 | 感谢 `biliup` 项目及其贡献者提供的基础能力: |
| 309 | |
| 310 | - https://github.com/biliup/biliup |
| 311 | |
| 312 | ## 📜许可证 |
| 313 | |
| 314 | 本项目暂时采用 [MIT License](LICENSE) 开源许可证。 |
| 315 | |
| 316 | ## ⭐Star-History |
| 317 | |
| 318 | > 如果这个项目对您有帮助,请给一个 ⭐ Star 以表示支持! |
| 319 | |
| 320 | |
| 321 | |
| 322 | |
| 323 | [](https://star-history.com/#dreammis/social-auto-upload&Date) |
| 324 |