前言
yt-dlp是一个命令行程序,可在youtube、twitch、bilbili、西瓜视频等一千多个网站下载视频资源1。国内平台的解析工具已经存在很多,像you-get之类,我们主要用它来下载海外视频。
作为youtube-dl的增补版,yt-dlp有着比起前辈更快的速度,以及众多新特性。本文仅记录win10系统python环境下的跑通方法。在尝试前,先确保本地存在3.7+的python版本,推荐安装ffmpeg、ffprobe等依赖,以方便视频合并、转码等后续处理。
官方项目地址:https://github.com/yt-dlp/yt-dlp
本文仅作学习记录,如有错误欢迎提出,持续更新。
0.科学上网
下载youtube视频的前提是自由访问,默认读到本文的应该都已实现科学访问了~
没有的同学请先行寻找合适的加速器
1.安装yt-dlp
打开命令行输入:
pip install yt-dlp
速度慢可以更换pip镜像源,或在pypi下载离线安装
2.安装FFmpeg
这里的FFmpeg指二进制文件,而非同名的python包,其中包含了ffmpeg、ffprobe、ffplay三大工具。
2.1 官网下载
访问网址:https://www.gyan.dev/ffmpeg/builds
全文搜索CTRL+F
找到ffmpeg-release-full.7z这个安装包,点击下载
解压到本地目录中,打开bin文件夹,地址栏复制本地路径
2.2 环境变量配置
计算机右键【属性】-> 【高级系统设置】->【高级】-> 【环境变量】-> 【用户变量】
双击Path,新建一条,在变量值里粘贴复制的路径
2.3 安装成果检查
WIN+R
输入cmd,命令行中测试一下,输入ffmpeg回车,出现下图类似结果安装成功
3. 上手下载
3.1 基础格式
在想要保存的目录下打开命令行(地址栏输入cmd回车),按照如下格式书写命令:
yt-dlp [OPTIONS] [--] URL [URL...]
yt-dlp必须在前,OPTIONS和URL填写不分先后
基础用法示例:
# --proxy 使用指定的HTTP/HTTPS/SOCKS代理。 e.g. socks5://user:pass@127.0.0.1:1080/
# 127.0.0.1表示本机ip,1080表示当前使用的端口,请根据本机情况查询并更改,见3.2
# URL填写想下载的视频地址
# 下载单个视频
yt-dlp --proxy socks5://127.0.0.1:1080 https://www.youtube.com/watch?v=NtKJSHW68p4
# 下载播放列表的所有视频
yt-dlp --proxy socks5://127.0.0.1:1080 https://www.youtube.com/playlist?list=PLqWr7dyJNgLJ79otw7N9CXQ_AU0Fm04aq
3.2 脚本地址查询
点右下角网络图标进入【网络和Internet设置】,选择【代理】
找到【使用设置脚本】,开启
检查命令中的ip和端口和【脚本地址】是否一致
3.3 常用参数和用例展示
根据使用需求,追加命令参数,体验yt-dlp的丰富玩法,具体见项目自述,也可在命令行输入yt-dlp --help
查看说明
3.3.1 陈列资源 -F, --list-formats
- 含义:列出所有文件的格式信息
- 用法:
yt-dlp [--proxy ...] URL -F
yt-dlp [--proxy ...] URL --