据 AlphaMoat 统计,截至 2026-09,TikTok Uploader 累计下载 3,277 次、获 6 个星标,在全部 5,078 个 AI 技能中排名第 3,466 位,在「AI 智能体」分类(969 个)中排名第 712 位。
| 平台 | 累计安装 | 累计下载 | 星标 | 评论 |
|---|---|---|---|---|
| ClawHub ↗ | 101 | 3,075 | 5 | - |
| SkillHub ↗ | 100 | 3,277 | 6 | — |
各平台的计数口径不同,统计时间不一致。
流程支持通过 cookie 文件、session ID 或 cookie 列表认证,并可设置文案、可见范围和发布时间。Cookie 与 session ID 可授予账户访问权,应像密码一样保护;批量发布前应检查视频、文案、可见范围和时间。该方案依赖 TikTok 网页界面,并非官方 API,界面变化或频繁上传可能导致失败或限流。
资料发布于 2026-10-29
以下是根据技能文档生成的示例,不代表实际运行结果。
2026-09 起统计方法调整:同名技能按作者分别统计,并覆盖全部技能。图中虚线为调整前的月份,与之后的数据不直接比较,也不计算跨越调整的增长。
| 月份 | 累计下载 | 环比 | 星标 |
|---|---|---|---|
| 2026-09 | 3,277 | — | 6 |
| 2026-08 | 3,017 | +4.2% | 6 |
| 2026-07 | 2,895 | +9.8% | 6 |
| 2026-06 | 2,636 | +7.3% | 5 |
| 2026-05 | 2,457 | — | 5 |
| 2026-03 | 1,565 | — | 4 |
以下是作者发布的原始文件,按纯文本显示,本站未做修改或审核;其中的链接不可点击,命令请核实后再运行。抓取于 2026-10-23。
---
name: tiktok-uploader
description: "Upload, schedule, and batch-manage TikTok videos via browser automation. Use when: user wants to upload a video to TikTok, schedule a TikTok post, batch upload multiple TikTok videos, or scan a directory for uploadable videos. NOT for: TikTok analytics, downloading videos, or managing comments/followers."
homepage: https://github.com/wkaisertexas/tiktok-uploader
user-invocable: true
metadata: {"openclaw":{"emoji":"🎬","requires":{"bins":["python3","playwright"],"env":[]},"install":[{"id":"pip","kind":"pip","package":"tiktok-uploader","bins":["tiktok-uploader"],"label":"Install tiktok-uploader (pip)"},{"id":"playwright","kind":"pip","package":"playwright","bins":["playwright"],"label":"Install Playwright"}]}}
---
# TikTok Video Uploader
Upload, schedule, and batch-manage TikTok videos using the `tiktok-uploader` Python library (Playwright-based browser automation wrapping TikTok's web upload page).
## Setup
```bash
pip install tiktok-uploader
playwright install
```
## Authentication
The user **must** provide one of these. Ask if not yet configured:
| Method | How to get it |
|---|---|
| **Cookie file** (recommended) | Export `cookies.txt` from browser using the "Get cookies.txt LOCALLY" extension. |
| **Session ID** | DevTools → Application → Cookies → `.tiktok.com` → copy `sessionid` value. |
| **Cookie list** | List of dicts: `[{name, value, domain, path}]`. |
Session cookies expire — if uploads fail with auth errors, the user needs fresh cookies.
## Operations
### Upload a single video
```python
from tiktok_uploader.upload import TikTokUploader
with TikTokUploader(cookies="cookies.txt", headless=True) as uploader:
success = uploader.upload_video(
filename="video.mp4",
description="Check this out #fyp #viral @friend ",
visibility="everyone", # "everyone" | "friends" | "only_you"
comment=True,
stitch=True,
duet=True,
cover="thumbnail.png", # optional
)
print("Uploaded!" if success else "Failed.")
```
### Schedule a video
```python
from datetime import datetime, timezone
with TikTokUploader(sessionid="abc123...", headless=True) as uploader:
uploader.upload_video(
filename="video.mp4",
description="Dropping soon! #scheduled ",
schedule=datetime(2026, 3, 10, 14, 30, tzinfo=timezone.utc),
)
```
Rules: must be 20 min – 10 days in the future; minutes are rounded to nearest 5.
### Batch upload
```python
videos = [
{"path": "vid1.mp4", "description": "First #batch "},
{"path": "vid2.mp4", "description": "Second", "schedule": datetime(2026, 3, 10, 15, 0, tzinfo=timezone.utc)},
{"path": "vid3.mp4", "description": "Third", "visibility": "friends"},
]
with TikTokUploader(cookies="cookies.txt", headless=True) as uploader:
failed = uploader.upload_videos(videos)
if failed:
print(f"{len(failed)} videos failed")
```
### Using the wrapper module
This skill ships a convenience wrapper at `scripts/tiktok_manager.py`:
```python
from scripts.tiktok_manager import TikTokManager
mgr = TikTokManager(cookies="~/cookies.txt")
# Upload
mgr.upload("video.mp4", description="Hello TikTok! #fyp ")
# Schedule
mgr.upload("video.mp4", description="Scheduled!", schedule="2026-03-10T14:30")
# Batch
mgr.upload_batch([
{"path": "v1.mp4", "description": "First"},
{"path": "v2.mp4", "description": "Second", "schedule": "2026-03-10T15:00"},
])
# Scan directory for uploadable videos
videos = TikTokManager.scan_videos("~/Videos/tiktok", recursive=True)
```
## Important Notes
- **Hashtags & @mentions**: Include in description, each tag followed by a space. Verify they exist.
- **Description limit**: ~150 characters.
- **Rate limiting**: TikTok throttles after many uploads. Space them out; wait hours if throttled.
- **Headless mode**: Set `headless=False` to watch the browser for debugging.
- **Proxy**: Pass `proxy={"host": "...", "port": "..."}` — Chrome only.
- **Supported formats**: .mp4, .mov, .avi, .wmv, .flv, .webm, .mkv, .m4v, .3gp, .3g2, .gif
- **Fragility**: Browser automation, not an official API. TikTok UI changes can break it.
## Troubleshooting
| Problem | Fix |
|---|---|
| Auth/login error | Cookies expired → export fresh cookies.txt |
| Upload hangs | Try `headless=False` to see what's happening |
| Throttled/rate limited | Wait a few hours between batches |
| Selector errors | tiktok-uploader may need an update (`pip install -U tiktok-uploader`) |
把开发过程中的经验、错误与纠正记录为 Markdown 文件,供后续复用并晋升为工作区记忆。
用自然语言描述需求,在本地与远程技能市场里找技能并给出推荐的技能。
给 AI agent 用的浏览器自动化命令行技能。
把用户纠正与自我复盘沉淀成分层记忆、并按使用情况升降级的技能。
在安装第三方技能之前,按清单审查来源、权限与危险模式的技能。
把 agent 的记忆与跨技能状态存成带类型和约束的知识图谱的技能。
一份为 AI 代理规划主动跟进、工作记忆与复盘流程的工作区配置指南。
指导如何创建与更新有效 Claude 技能的写作指南。
数据月份:2026-09 · 下载/星标/安装数聚合自公开技能注册库(ClawHub、SkillHub),按月更新。口径说明见数据方法。