自从准备考试以来就好久没有更新博客了,这篇文章简要总结一下个人下载 YouTube 视频的各种方法。
youtube-dl
Python 写的命令行程序,用于下载youtube 和一些其他站点上的视频, 支持py2.6 和3.2+ . 对于windows平台也有单独的可执行文件版本(.exe). 功能强大,一直以来是我下载youtube 视频的首选。
可以用来批量下载一个播放列表里面的视频,或者下载视频字幕,支持自定义视频分辨率和转换格式,或者调用外部下载器(aria2c), 缺点是当网络状况不好的时候经常会报错退出,而且单线程的速度有时并不太理想。
安装
使用pip 安装:
1 | sudo -H pip install --upgrade youtube-dl |
对于Arch Linux,可以使用pacman 直接从官方仓库里面安装。
使用
简单的使用例子:
- 下载播放列表的所有视频(默认高画质):
1
youtube-dl "https://www.youtube.com/playlist?list=PLhQjrBD2T382VRUw5ZpSxQSFrxMOdFObl"
- 下载单一的视频文件:
1
youtube-dl "https://www.youtube.com/watch?v=o4SGkB_8fFs&list=PLhQjrBD2T382VRUw5ZpSxQSFrxMOdFObl&index=1"
- 加入 -x 参数,只下载音频(适用于用youtube 听歌的人群):
1
youtube-dl https://www.youtube.com/watch\?v\=s2JH-u3GsOU -x --audio-format mp3
配置
不习惯每次下载视频或者音频要加入一大串额外参数的可以使用youtube-dl 的配置文件,路径在 ~/.config/youtube-dl/config 下面是一个配置实例:1
2
3
4
5
6
7
8
9
10
11
12# Use this proxy
--proxy ******
# Save all videos under Movies directory in your home directory
# -o ~/Videos/%(title)s.%(ext)s
# Number of retries
-R 30000
# Fragment-retries
--fragment-retries 30000
# network options
--socket-timeout 100000
# downloader options
--external-downloader aria2c
savefrom.net
在线解析
savefrom.net 提供了在线youtube 视频下载链接解析服务,同时支援一部分其他的国外视频网站。使用起来很简单:
直接在地址框内粘贴想要下载的视频的URL,就可以获得下载链接,同时可以选择下载格式和清晰度:
下载速度相当快,很适合命令行苦手。
使用插件
使用这个网站提供的浏览器插件,可以实现“一键下载”:
具体安装流程可以参看官网的详细介绍, chrome 用户需要安装chameleon 达到安装Opera 插件的效果。