SuperAPI AI 工具集

wjs-uploading-video

设计与创作

查看项目

更新于 10-15 23:32

技能介绍

用途:把已完成的 .mp4 视频推送到 YouTube,支持单个文件或指向含多个分段与 UPLOAD_META.md 的 final/ 目录批量上传。不适用于微信视频号、抖音、小红书、B 站;横版转 Shorts 需先用 wjs-reframing-video 生成 9:16 版本再上传。

主要能力:读取 UPLOAD_META.md,将每个 ## NN · filename.mp4 块与目录中视频配对;短标题作为 YouTube 标题,视频描述原样使用并保留 #标签,描述中的 #词转为逗号分隔标签;跳过已上传记录,失败后可安全重跑;每 8 MB 输出进度;结果写入 JSON 结果文件。

使用方式:需一次性配置 Google Cloud OAuth 客户端 ~/.config/youtube/credentials.json,并安装 pip3 install google-auth-oauthlib google-api-python-client requests。首次上传会打开浏览器授权并写入 token.json。批量上传示例:python3 ~/.claude/skills/wjs-uploading-video/scripts/upload_youtube.py --dir "/path/to/final" --meta "/path/to/final/UPLOAD_META.md"。单文件可用 --video、--title、--description、--tags。常用参数包括 --privacy(默认 public)、--category(默认 28)、--made-for-kids、--playlist、--publish-at、--chunk-mb(默认 8)、--dry-run。

实现特点:绕过 httplib2,用 google-auth 做 OAuth、requests 手动驱动可续传上传并显式传代理,8 MB 分块,对 socket.timeout、ConnectionError、5xx 做指数退避重试。若遇 ModuleNotFoundError: No module named 'google.oauth2',可用 uvx --with google-auth --with requests python 运行脚本。

限制:YouTube Data API 默认配额 10,000 单位/天,每次上传 1,600 单位,约每天 6 次;另有独立的每日视频上传数限制(429),按美国太平洋时间午夜重置,无法绕过。代理不可达、配额超限、令牌刷新失败等需按故障排查处理。默认上传后视频立即公开。