youtube-dl 使用教程
youtube-dl 是一款采用Python 编写的免费、开源、命令行程序,主要是用来下载视频的。
主要下载Youtube上的视频,还有国内外其它一些视频网站的,m3u8的好像会有点问题,下载不了。
一、安装环境
- 1、安装 python(https://www.python.org/ )
- 2、安装 ffmpeg (http://ffmpeg.org/ )
- 3、安装 youtube-dl (https://github.com/ytdl-org/youtube-dl/releases )
因为命令行需要用到 youtube-dl,所以把ffmpeg、youtube-dl.exe 都添加到系统环境变量。
youtube-dl 项目github地址:https://github.com/rg3/youtube-dl/
二、下载YouTube视频
1、查看视频所有类型,只看不下载
1 | youtube-dl -F [url] |
2、下载视频和音频并主动合并
1 | youtube-dl -f [format code] [url] //下载指定格式的视频和音频,如 youtube-dl -f 299+140 [url]youtube-dl -f bestvideo+bestaudio [url] //下载质量最好的视频和音频 |
如果系统中安装了ffmpeg的话,youtube-dl会自动合并已经下载好的音频和视频,然后自动删除单独的音视频文件。
把下载的视频转换成mp4格式
加上--merge-output-format mp4
参数
3、下载字幕
1 | --list-subs 列出所有可以下载的字幕,包括语言以及格式 |
1).查看视频支持哪些语言的字幕
1 | youtube-dl --list-subs [url] |
2).下载字幕
a.只下载字幕用户上传的 zh-Hans 字幕,不下载视频
1 | youtube-dl [url] --write-sub --sub-lang zh-Hans --skip-download |
b.把下载的vtt字幕转换成srt字幕
1 | youtube-dl [url] --write-sub --sub-lang zh-Hans --sub-format vtt --convert-subs srt --skip-download |
3).同时下载视频和字幕(字幕嵌入视频)
加上参数:–embed-sub -i
1 | youtube-dl.exe [url] -f 299+140 --write-sub --sub-lang zh-Hans --embed-sub -i |
会下载一个视频文件(内嵌字幕)。
4、总结
1).查看视频支持哪些语言的字幕
1 | youtube-dl --list-subs [url] |
2).下载视频(含字幕,质量最好的视频和音频)
1 | youtube-dl [url] -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4' --write-sub --sub-lang zh-Hans --embed-sub -i |
三、批量下载视频
1、下载播放列表
参数:–yes-playlist -f -k ListURL
1).下载YouTube播放列表(-i 后面跟的即列表名)
1 | youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4' --write-sub --sub-lang zh-Hans --embed-sub -i PLBAGcD3siRDguyYYzhVwZ3tLvOyyG5k6K |
2).下载播放列表
- 要从播放列表下载第 10 个文件,可使用:youtube-dl –playlist-items 10 [playlist_url]
- 要下载多个指定的文件,只需用逗号分隔:youtube-dl –playlist-items 2,3,7,10 [playlist_url]
- 从第 10 个开始,直接下载完整个列表:youtube-dl –playlist-start 10 [playlist_url]
- 在播放列表中仅下载从第 2 到第 5 的文件:youtube-dl –playlist-start 2 –playlist-end 5 [playlist_url]
2、批量下载
新建一个 list.bat 文件,文件内容为:
1 | url1 |
1 | youtube-dl --batch-file list.bat |
1 | youtube-dl -a list.txt |
1 | youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4' --write-sub --sub-lang zh-CN --embed-sub -i -a list.txt |
五、报错
如果提示 HTTP Error 403: Forbidden 错误,运行一下下面的代码:
1 | youtube-dl --rm-cache-dir |
- 本文标题:youtube-dl 使用教程
- 本文作者:HDUZN
- 创建时间:2022-04-09 16:50:00
- 本文链接:http://hduzn.cn/2022/04/09/youtube-dl 使用教程/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
评论