0%

下载YouTube视频

自从准备考试以来就好久没有更新博客了,这篇文章简要总结一下个人下载 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 插件的效果。