news 2026/9/1 14:46:27

Cobalt 视频下载完整指南:Docker 自建实例到 API 调用的实操教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Cobalt 视频下载完整指南:Docker 自建实例到 API 调用的实操教程

Cobalt 视频下载完整指南:Docker 自建实例到 API 调用的实操教程

【免费下载链接】cobaltbest way to save what you love项目地址: https://gitcode.com/GitHub_Trending/cob/cobalt

凌晨刷到一条很对味的教程视频,想把它转成 mp3 存进手机通勤时听——与其依赖那些行为不透明的在线站,不如自己跑一个。Cobalt 是一个开源的自托管视频下载服务,支持 YouTube、TikTok、Bilibili 等 20 多个平台,没有广告、没有追踪器,一条 Docker 命令就能把它部署到自己的服务器上,还开放 REST API 方便接进你自己的脚本。下面从部署、参数配置到接口调用,一步步带你把它跑通。

⚡ 5 分钟跑通一个 Cobalt 实例

部署首选官方 Docker 包,前提是机器上装好了 Docker 和 Docker Compose(容器编排工具)。我们最省事的路径就三步:

git clone https://gitcode.com/GitHub_Trending/cob/cobalt cd cobalt docker compose up -d

compose 文件可以直接拿仓库里的 样例配置 起步,唯一必须改的是把默认的WEB_URL/API_URL换成你自己的域名,否则前端会把请求发给别人的实例。包内置了 watchtower(容器自动升级工具),镜像一有新版容器就会自动拉取重启,省掉手动升级这一步。

如果只是本地开发调试,也可以手动装:先装 Node.js 18 以上和 git,git clone仓库后跑npm run setup(脚本会问你这次装 API 还是前端,两者要分开部署),再npm start就能跑起来。要支持需要登录态才能看的内容,在同目录放一份 cookies.json(样例见 cookies.example.json),再用环境变量COOKIE_PATH指向它。

🎛️ 下载参数怎么配:模式、画质与文件名

所有请求都打到同一个POST /api/json接口,靠 body 里的字段控制行为。最关键的几个开关如下。

三种互斥模式(默认就是视频+音频):

模式怎么触发适用
视频+音频默认,不用传存原片
仅音频isAudioOnly: true只要音乐/人声(做课件转 mp3/opus 很省空间)
仅视频isAudioMuted: true只要画面素材,去掉音轨

画质与编码vQuality可取 144 到 2160 或max,默认 720(手机端建议这个,省电省流);YouTube 还能用vCodech264/av1/vp9,老手机选 h264 兼容性最稳。音频格式由aFormat指定,支持bestmp3oggwavopus,默认 mp3。

平台专属开关:TikTok 的isTTFullAudio能拿到视频用的原始完整音源(找 BGM 原曲时很顺手),tiktokH265控制是否优先 1080p 的 HEVC 版本;Twitter 的twitterGif决定 GIF 是否真转成 .gif 文件。

文件名filenamePattern决定,四种风格,生成逻辑在 createFilename.js,标题、分辨率、编码器、音轨语言都会保留,素材入库后不用二次改名也能认出来:

取值示例
classic(默认)youtube_MMK3L4W70g4_1920x1080_h264_mute.mp4
prettyLoossemble - 'Sensitive' MV (1080p, h264, mute, youtube).mp4
basic标题 + (1080p, h264),不带平台名
nerdy标题 + (1080p, h264, ru, youtube, 视频ID)

运营做品牌素材归档时,把filenamePattern设成nerdy最省心——文件名里自带分辨率、编码和平台 ID,按项目文件夹一放,日后盘点不用回网站翻历史。

🔌 Cobalt API 调用与实例加固

整个服务本质就是一个 REST 接口,前端和 API 分开放,所以任何语言、任何脚本都能直接调,把它接进自己的自动化里也毫不费力。最精简的一次调用长这样:

curl -X POST http://localhost:9000/api/json \ -H "Accept: application/json" -H "Content-Type: application/json" \ -d '{"url": "https://www.youtube.com/watch?v=xxxxx", "vQuality": "1080"}'

成功时返回status: success加一个可下载的直链,链接参数带签名且有时效,直接当下载地址用就行。每个平台的具体抓取与转码逻辑都在 services 目录,一个平台一个文件,字段全集见 docs/api.md。

要把实例暴露到公网,重点调这几个环境变量(完整清单在 run-an-instance.md):

变量默认说明
API_PORT9000API 端口
WEB_PORT9001前端端口
API_URL必填实例对外地址
RATELIMIT_WINDOW60限流时间窗(秒)
RATELIMIT_MAX20窗口内单 IP 最多请求数
CORS_WILDCARD10=按白名单,1=全放开
CORS_URL白名单域名

RATELIMIT_WINDOWRATELIMIT_MAX是防滥用的第一道闸,超了直接回 429;CORS_WILDCARD设 0 后只有CORS_URL指定的域名能调你的接口。对外再套一层 nginx 反向代理,基本就稳了。

🧯 常见报错怎么自查

  • 返回 429:撞上速率限制了,等一个窗口期(默认 60 秒)再试,或调大RATELIMIT_MAX
  • 部分内容下不了 / 提示要登录:配好 cookies.json 并用COOKIE_PATH指向它,登录态只对需要鉴权的平台生效。
  • 端口被占:改API_PORT(默认 9000)或WEB_PORT(默认 9001)。
  • YouTube 出来只有 720p:这是默认值,请求里显式写vQuality: 10802160
  • 页面里调用报 CORS 错:API 端把CORS_WILDCARD设 1 全放开,或设 0 并用CORS_URL精确放行你的前端域名。

把 Cobalt 部署到自己服务器上,下载这件事就完全掌握在自己手里——链接贴进去,文件落下来。

请遵守各平台服务条款,尊重原作者版权,下载的内容仅用于你计划中的用途;Cobalt 只处理可公开访问的内容。

【免费下载链接】cobaltbest way to save what you love项目地址: https://gitcode.com/GitHub_Trending/cob/cobalt

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/1 14:46:21

ESP32-P4驱动RGB显示屏:从硬件连接到时序调试全攻略

如果你正在为 ESP32-P4 寻找一款合适的显示屏,或者已经拿到了一块 5 寸 RGB 接口的屏幕却不知如何点亮,那么这篇文章就是为你准备的。很多开发者拿到 ESP32-P4 和 RGB 屏后,会陷入一个误区:以为像驱动 SPI 或 I2C 的 OLED 屏一样&…

作者头像 李华
网站建设 2026/9/1 14:40:28

Word - Word 图片临时放大,查看细节

Word 图片临时放大,查看细节 切换到阅读模式,然后双击图片,图片就会放大。图片上还会出现一个放大镜图标,点击就能铺满整个屏幕查看 在 Word 窗口的右下角,有一个可以左右拖动的缩放滑块。往右拖动,整个文…

作者头像 李华
网站建设 2026/9/1 14:40:27

电脑维修店管理系统实战:易图运筹帷幄版V3.8.2从解压到落地

简介:易图电脑行业管理系统-运筹帷幄版V3.8.2是一款专为电脑公司打造的信息化管理软件,适用于希望规范分店管理、优化库存与利润分配的电脑行业经营者。软件历经多年迭代,整合了客户对账、银行对账、经营报表、产品定价与员工分成激励等实用模…

作者头像 李华
网站建设 2026/9/1 14:40:05

奇安信算法岗笔试揭秘:从KMP到粒子群,安全算法考点全解析

2020年秋招季,奇安信的算法方向笔试题出了第二套卷子。和很多人想象的不太一样,这套卷子并不是深度学习八股的天下——KMP的next数组被单独拎出来问定义,粒子群、PID、卡尔曼滤波这类"老古董"也出现在题目里,甚至还有一…

作者头像 李华
网站建设 2026/9/1 14:37:50

360校招iOS方向笔试客观题复盘:出题逻辑与备考策略

2023年我以应届生身份投了360的技术岗-iOS方向,笔试那关的客观题给我留下的印象特别深——看起来就是几十道选择题,但答起来总有一种"每一个选项都认识,凑一起就发懵"的感觉。后来我把备考时搜到的经验、面经帖、社区讨论和自己踩的…

作者头像 李华