fqscfqj/Y2A-Auto
多媒体与设计将 YouTube 视频自动下载、生成并翻译字幕后上传到 AcFun 和 bilibili 的自托管搬运流水线。
项目介绍
Y2A-Auto 是一个基于 Flask 的自托管搬运工具,把 YouTube 视频自动投到 AcFun 和/或 bilibili。单个任务串起 yt-dlp 下载、可选语音识别(Whisper 或 Voxtral)、字幕翻译与质检、AI 生成标题/简介/标签和分区推荐、可选的阿里云内容审核、FFmpeg 转码以及上传。Web 后台提供任务列表、人工审核与强制上传、分组设置,并支持平台扫码登录 功能概览。
此外还支持按频道或关键词定时监控 YouTube(需要 YouTube Data API v3 密钥)、企业微信/Server酱/message-pusher 通知、CookieCloud 同步 Cookie,以及独立部署的 Telegram 转发机器人 YouTube 监控。
快速使用
推荐使用 Docker,无需手动安装 Python、FFmpeg、yt-dlp。先准备三个 Cookie 文件:cookies/yt_cookies.txt、cookies/ac_cookies.json、cookies/bili_cookies.json,然后在项目根目录执行:
docker compose up -d
打开 http://localhost:5000,首次进入先配置登录保护、平台账号和 YouTube Cookie 快速开始。数据持久化在 config/、db/、downloads/、logs/、temp/、cookies/。如果挂载目录报 PermissionError,先创建目录并把属主改为容器内使用的 UID/GID 1000:1000;rootless Docker 下按实际映射处理 Docker 官方文档。
本地运行需要 Python 3.11+、FFmpeg 和 yt-dlp:
py -3.11 -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
python app.py
然后访问 http://127.0.0.1:5000。Windows 便携包通过 build-tools/ 构建,通常内置 FFmpeg/FFprobe。
关键配置
AUTO_MODE_ENABLED 是无人值守自动投稿总开关,默认关闭。AI 文本功能通过 OPENAI_BASE_URL 和 OPENAI_MODEL_NAME 接入兼容 Chat Completions 或 Responses 的端点,字幕翻译和字幕质检可以单独覆盖模型配置 配置说明。FFmpeg 需为 5.1 及以上,因为字幕烧录使用 -fps_mode cfr;把 FFMPEG_LOCATION 指向 5.0 或更旧版本会导致软件编码失败。硬件编码可选 NVIDIA(hevc_nvenc)、Intel(hevc_qsv)、AMD(Windows 用 hevc_amf,Linux 用 hevc_vaapi),不可用时回退 CPU 编码。
使用约束
- YouTube Cookie 是必需的;失效或缺失通常表现为 403 / not a bot。
- Web 界面默认不启用密码保护,且使用明文 HTTP,不要把 5000 端口直接暴露公网;建议用 SSH 本地端口转发,或开启密码保护并经反向代理加 HTTPS 常见问题。
- bilibili 投稿可能遇到账号级风控(603 异常),默认
auto会先走必剪 PC 接口再回退 Web。 - 公共 Telegram 机器人跑在个人 VPS 上,项目说明该服务器已被墙、不保证可用,长期使用需自行部署 部署与运行。
- 许可证为 GPL-3.0,README 要求遵守平台条款,仅在合法合规前提下用于学习与研究。
HotRepo 点评
在 2026-11-15 的 Python 日榜快照中,项目当日新增 99 Star,位列该语言榜第 11,总 Star 5,007、Fork 847。这只是单日单语言榜的记录,能说明当时受到关注,但不足以判断趋势;它没有全语言日榜名次,因此也没有跨语言的可比位置。技术上更值得运营者注意的是字幕质检失败状态和 x265 回退的明确处理,这些配置细节比 Star 数更能反映实际使用成本。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。