简介
下载链接:https://github.com/yt-dlp/yt-dlp
yt-dlp
是我继you-get
、youtube-dl
后使用的第三款命令行视频下载工具,前两者或因不再更新,或因无法使用系统代理下载而被我弃用,而yt-dlp
是目前较为流行,并且下载体验很好且持续更新的软件,但在进行一些高级操作时需要进行一些命令的配置,因此在此作笔记进行说明。
注意,需要与ffmpeg搭配使用,进行音视频合并操作
常用下载组合
嵌入字幕+章节信息+1080p
$ yt-dlp -f137+140 --sub-lang en-US --write-sub --embed-sub --embed-chapters LINKS
下载字幕
--list-subs
:列出当前视频的所有字幕--write-sub
:保存字幕,如果不添加此参数则无法保存字幕。无论是将保存为字幕文件还是直接嵌入视频中都不行。--embed-sub
:嵌入字幕,将字幕嵌入视频中,可以进行字幕轨道的选择--sub-lang LANGUAGE
:选择通过--list-subs
命令列出的可选字幕进行保存或嵌入,all
表示下载所有支持的字幕--convert-subs FORMAT
:将字幕文件转换为指定格式,支持srt、ass、lrc等格式--skip-download
:跳过下载视频,即仅下载字幕
下载视频
-
-F
:显示当前视频的所有格式,如音频、视频、清晰度等,不同格式使用指定的数字ID进行表示
-
-f
:选择指定格式(音频+视频)进行下载,如需要下载1080p视频,则应使用-f137+140
。如不指定,则默认下载最高清晰度 -
-f "best[height>=720]"
:下载分辨率等于或大于 720p 的最佳格式(视频 + 音频) -
-f 'bv*+ba'
:下载最佳视频流并将其与最佳音频流合并 -
-f 'bv*[height=1080]+ba'
:下载 1080p 视频并与最佳音频流合并 -
-f 'bv[height=1080][ext=mp4]+ba[ext=m4a]'
:下载 mp4 格式的 1080p 视频并与最佳 m4a 音频格式合并 -
--embed-chapters
:嵌入章节信息。许多知识分享类视频会在视频内划分章节,方便学习者快速定位,使用该参数即可将章节信息嵌入视频中,在VLC等播放器中可以在进度条上查看章节信息。 -
--cookies COOKIE_FILE
:目前下载B站视频时,如果不添加cookies信息,则只能下载480p清晰度的视频,而在添加了cookies后则可以下载1080p视频。但需要注意的是,该参数所使用的cookies文件必须是Netscape
格式的,通过使用如Get cookies.txt Clean
的浏览器插件可以自动导出Netscape格式的网站cookies。
下载播放列表
yt-dlp -f137+140 --embed-chapters PLAYLIST_LINK -o '%(channel)s/%(playlist)s/%(playlist_index)s-%(title)s.%(ext)s'
-o
是将视频保存为指定格式,包括路径、文件名、扩展格式
%(channel)s
:频道名%(playlist)s
:播放列表名%(playlist_index)s
:播放列表索引,即视频序号%(title)s
:视频名%(ext)s
:扩展文件名