6
0
0
yt‑dlp(虚拟环境部署)2026/08/19
2026-08-19
2026-08-19
文章摘要
|
清单汇总
1、yt‑dlp(虚拟环境部署,代码固定路径)
代码常量:YTDLP_BIN = '/opt/yt-dlp-env/bin/yt-dlp'
必须用 python venv 创建
/opt/yt‑dlp‑env虚拟环境,在里面安装 yt‑dlp
# 示例部署命令
apt install python3 python3-venv -y
python3 -m venv /opt/yt-dlp-env
/opt/yt-dlp-env/bin/pip install -U yt-dlp不能系统直接装 yt‑dlp,代码硬编码读取这个 venv 下的二进制。
2、Deno
代码常量:DENO_BIN = '/root/.deno/bin/deno'
deno 安装到 root 用户家目录,用于 yt‑dlp JS 解释器回退,没有就降级用 node。
# root 用户执行
curl -fsSL https://deno.land/x/install/install.sh | sh3、ffmpeg
候选路径:
/usr/local/bin/ffmpeg
/usr/bin/ffmpeg
/bin/ffmpeg需要完整 ffmpeg(带音频视频合并,yt‑dlp 合并 mp4/m4a)
apt install ffmpeg -y4、bgutil 服务(重要,PO‑Token 服务)
BGUTIL_URL = 'http://127.0.0.1:4416'
mweb‑bgutil 第一下载策略依赖这个本地后台服务,用来生成 YouTube PO‑Token,监听本地 4416 端口。
需要部署 bgutil,本地 127.0.0.1:4416 提供 http 接口;
代码会自动检测,如果服务连不上,会自动跳过 bgutil,回退另外两套 client。
docker run -d \
--name bgutil-provider \
--restart unless-stopped \
-p 4416:4416 \
brainicism/bgutil-ytdlp-pot-provider:latestyt-dlp --extractor-args "youtubepot-bgutilhttp:base_url=http://127.0.0.1:4416" "https://www.youtube.com/watch?v=视频ID"