TikTok Uploader

通过浏览器自动化批量上传、调度 TikTok 视频,支持多种格式和定时发布。

已扫描
适合谁
TikTok 内容创作者、短视频运营人员
不适合谁
需要 TikTok 数据分析的用户、希望下载或管理评论的用户
国内可用性
需网络配置。可能需要网络配置或第三方服务可访问。
安装难度
新手友好(★☆☆)。基于终端操作、依赖、API Key 和本地环境要求的初步判断。

安装与下载

openclaw skills install @xmuweili/tiktok-uploader

Skill 说明

命令、参数、文件名以原文为准

TikTok 视频上传工具

使用 tiktok-uploader Python 库(基于 Playwright 的浏览器自动化,封装 TikTok 网页上传页面)上传、定时发布和批量管理 TikTok 视频。

安装

pip install tiktok-uploader
playwright install

认证方式

用户必须提供以下任一认证方式。若未配置,请询问:

方法获取方式
Cookie 文件(推荐)使用“Get cookies.txt LOCALLY”浏览器扩展从浏览器导出 cookies.txt 文件。
Session ID打开开发者工具 → Application → Cookies → .tiktok.com → 复制 sessionid 值。
Cookie 列表字典列表格式:[{name, value, domain, path}]

会话 Cookie 会过期 —— 若上传失败提示认证错误,请更新为新的 Cookie。

操作说明

上传单个视频

from tiktok_uploader.upload import TikTokUploader

with TikTokUploader(cookies="cookies.txt", headless=True) as uploader:
    success = uploader.upload_video(
        filename="video.mp4",
        description="看看这个 #fyp #viral @friend ",
        visibility="everyone",   # "everyone" | "friends" | "only_you"
        comment=True,
        stitch=True,
        duet=True,
        cover="thumbnail.png",   # 可选
    )
    print("上传成功!" if success else "上传失败。")

定时发布视频

from datetime import datetime, timezone

with TikTokUploader(sessionid="abc123...", headless=True) as uploader:
    uploader.upload_video(
        filename="video.mp4",
        description="即将发布! #scheduled ",
        schedule=datetime(2026, 3, 10, 14, 30, tzinfo=timezone.utc),
    )

规则:发布时间必须在 20 分钟至 10 天之后;分钟数将四舍五入到最近的 5 分钟。

批量上传

videos = [
    {"path": "vid1.mp4", "description": "第一条 #batch "},
    {"path": "vid2.mp4", "description": "第二条", "schedule": datetime(2026, 3, 10, 15, 0, tzinfo=timezone.utc)},
    {"path": "vid3.mp4", "description": "第三条", "visibility": "friends"},
]

with TikTokUploader(cookies="cookies.txt", headless=True) as uploader:
    failed = uploader.upload_videos(videos)
    if failed:
        print(f"{len(failed)} 个视频上传失败")

使用封装模块

本技能提供便捷封装模块,位于 scripts/tiktok_manager.py

from scripts.tiktok_manager import TikTokManager

mgr = TikTokManager(cookies="~/cookies.txt")
# 上传
mgr.upload("video.mp4", description="你好 TikTok! #fyp ")
# 定时发布
mgr.upload("video.mp4", description="已定时!", schedule="2026-03-10T14:30")
# 批量上传
mgr.upload_batch([
    {"path": "v1.mp4", "description": "第一条"},
    {"path": "v2.mp4", "description": "第二条", "schedule": "2026-03-10T15:00"},
])
# 扫描目录中可上传的视频
videos = TikTokManager.scan_videos("~/Videos/tiktok", recursive=True)

重要注意事项

  • 标签与@提及:请在描述中包含,每个标签后加一个空格。请确认标签存在。
  • 描述长度限制:约 150 个字符。
  • 频率限制:TikTok 在频繁上传后会限流。请合理安排上传间隔;若被限流,请等待数小时再继续。
  • 无头模式:设置 headless=False 可以查看浏览器运行过程,便于调试。
  • 代理支持:可通过 proxy={"host": "...", "port": "..."} 传入代理 —— 仅支持 Chrome。
  • 支持的格式:.mp4、.mov、.avi、.wmv、.flv、.webm、.mkv、.m4v、.3gp、.3g2、.gif
  • 脆弱性说明:基于浏览器自动化,非官方 API。TikTok 界面变动可能导致功能失效。

故障排查

问题解决方法
认证/登录错误Cookie 已过期 → 重新导出 fresh cookies.txt
上传卡住尝试设置 headless=False 查看浏览器行为
被限流/频率限制每批上传之间至少间隔数小时
选择器错误可能需要更新 tiktok-uploader(执行 pip install -U tiktok-uploader
X
@xmuweili

已收录 1 个 Skill

相关推荐