douyin
# Douyin Video Uploader | 抖音视频上传工具
> **Douyin (TikTok China) video upload automation** — login, upload, and manage your Douyin Creator account from the command line or AI agents.
>
> 自动化上传视频到抖音创作者平台,支持登录、上传和账号管理。
**Keywords:** Douyin uploader, TikTok China, video upload, social media automation, 抖音上传, 抖音自动化, 短视频发布, creator platform
**This skill is self-contained — all code is bundled, no external repo cloning needed.**
此 skill 为自包含结构,所有代码已打包在内,无需克隆外部仓库。
## Important: First Upload Requires SMS Verification | 重要提示:首次上传需要短信验证
> **After logging in, your first video upload will require SMS verification.** Enter the verification code when prompted. After this one-time verification, all subsequent uploads will be fully automated.
>
> **登录成功后,第一次上传视频需要短信验证。** 按提示输入验证码即可。完成一次验证后,之后的上传将完全自动化,无需再次验证。
## Transparency Statement | 透明度声明
### Data Storage | 数据存储
- **Cookie file / Cookie 文件**: `{baseDir}/douyin-cookies.json` — Stores Douyin login credentials locally only (file permission: 0600) / 存储抖音登录凭证,仅在本地保存(文件权限:0600)
- **Browser data / 浏览器数据**: `{baseDir}/chrome-user-data/` — Puppeteer browser session data
### Network Access | 网络访问
This tool only accesses official Douyin domains / 本工具仅访问以下抖音官方域名:
- `https://creator.douyin.com` — Douyin Creator Platform (login & upload) / 抖音创作者平台(登录、上传)
- `https://www.douyin.com` — Douyin main site (permission verification) / 抖音主站(权限验证)
**No third-party servers are accessed. Your credentials are never uploaded or leaked.**
不会访问任何第三方服务器,不会上传或泄露您的登录凭证。
### Code Behavior | 代码行为
1. **login.js**: Opens browser → navigates to Douyin login → waits for manual login → saves Cookie locally / 打开浏览器 → 导航到抖音登录页 → 等待用户手动登录 → 保存 Cookie 到本地文件
2. **upload.js**: Loads Cookie → auto-login → uploads video → fills title/description/tags → publishes / 读取本地 Cookie → 自动登录 → 上传指定视频文件 → 填写标题/描述/标签 → 发布
3. **manage.js**: Read/validate/delete local Cookie files / 读取/验证/删除本地 Cookie 文件
### Dependencies | 依赖
- **puppeteer**: Browser automation (Chromium) / 浏览器自动化(Chromium)
- Full dependencies: see `package.json` in this directory / 完整依赖: 见本目录 `package.json`
## Installation | 安装
First-time setup — install dependencies / 首次使用需要安装依赖:
```bash
cd {baseDir} && npm install
```
> **Note / 说明**: Only installs puppeteer, no external repo cloning needed / 仅安装 puppeteer 依赖,无需克隆外部仓库。
## Feature 1: Login to Douyin | 功能一:登录抖音
Login to Douyin Creator Platform and save credentials (Cookie).
登录抖音创作者平台,保存登录凭证(Cookie)。
```bash
cd {baseDir} && node scripts/login.js
```
**Process / 流程:**
1. Auto-opens a browser window / 自动打开浏览器窗口
2. Waits for user to complete login (QR code or password) / 等待用户完成登录(扫码或账号密码)
3. Saves Cookie automatically after login / 登录成功后自动保存 Cookie
**Output example / 输出示例:**
```
✅ Login successful!
User: 用户昵称
Cookies saved: 25
```
## Feature 2: Upload Video | 功能二:上传视频
Upload video to Douyin with title, description and tags.
上传视频到抖音,支持设置标题、描述和标签。
```bash
cd {baseDir} && node scripts/upload.js --video "视频路径" --title "视频标题"
```
**Parameters / 参数:**
| Parameter 参数 | Required 必需 | Description 说明 |
|-----|-----|------|
| `--video` | Yes 是 | Absolute path to video file / 视频文件绝对路径 |
| `--title` | Yes 是 | Video title / 视频标题 |
| `--description` | No 否 | Video description / 视频描述 |
| `--tags` | No 否 | Tags, comma-separated / 标签,逗号分隔 |
| `--no-publish` | No 否 | Save as draft only / 仅保存草稿 |
**Full example / 完整示例:**
```bash
cd {baseDir} && node scripts/upload.js \
--video "/Users/xxx/video.mp4" \
--title "我的视频" \
--description "视频描述" \
--tags "日常,生活,记录"
```
**Output example / 输出示例:**
```
✅ Video upload and publish successful!
Title: 我的视频
Status: Published
```
## Feature 3: Manage Login Status | 功能三:管理登录状态
Check, view or clear login data / 检查、查看或清除登录数据。
### Check if login is valid | 检查登录是否有效
```bash
cd {baseDir} && node scripts/manage.js check
```
### View Cookie info | 查看 Cookie 信息
```bash
cd {baseDir} && node scripts/manage.js info
```
### Clear login data | 清除登录数据
```bash
cd {baseDir} && node scripts/manage.js clear
```
## FAQ | 常见问题
**Q: "Login expired" error?**
**Q: 提示 "Login expired"?**
```bash
cd {baseDir} && node scripts/manage.js clear
cd {baseDir} && node scripts/login.js
```
**Q: SMS verification during upload? / Q: 上传时遇到短信验证?**
The program will prompt you — enter the code as instructed.
程序会自动提示,按提示输入验证码即可。
**Q: How long does the Cookie last? / Q: Cookie 有效期多久?**
About 30 days. Check login status regularly.
约 30 天,建议定期检查登录状态。
标签
skill
ai