平时观看Youtube视频,有时想要将观看的视频下载到本地,这在电脑上很难实现,终于找到一个很方便的下载工具youtube-dl

youtube-dl工具来自yt-dl.org,本文参考了官方说明文档Readme

使用需要python解释器(版本需2.6、2.7或3.2+)。

Linux、Windows、MacOS都可以使用,本文主要介绍Linux下的使用,其他系统可以参考官方说明文档。

当然youtube-dl不仅支持从Youtube下载视频,还支持一些其他的视频网站,可以从主页找到支持的网站列表。

安装

使用curl进行安装。
如果没有curl,也可以用wget。

sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl

使用方法

基本语法

youtube-dl是一个命令行工具。

youtube-dl [OPTIONS] URL [URL...]

OPTIONS

一些常用参数

-h, --help                        打印帮助文档
--version                        显示版本
-U, --update                    更新

-F, --list-formats                列出URL视频的所有可选格式
-f, --format FORMAT                下载指定FORMAT的视频(FORMAT格式可以在所有可选格式中看到)

--list-subs                     列出可用的字幕
--write-sub                        将字幕写入下载的视频
--sub-format FORMAT                视频格式(如"srt"或者"ass/srt/best")
--sub-lang LANGS                字幕语言(可选)

-u, --username USERNAME            登陆用户名
-p, --password PASSWORD            登陆密码

更多的参数可以通过-h进行查看。

一些其他功能

配置

全局配置文件在/etc/youtube-dl.conf,用户配置文件在~/.config/youtube-dl/config
比如如下配置:总是下载音频,不复制时间,使用代理,并将所有下载视频放在~/Movies/下。

# Lines starting with # are comments

# Always extract audio
-x

# Do not copy the mtime
--no-mtime

# Use this proxy
--proxy 127.0.0.1:3128

# Save all videos under Movies directory in your home directory
-o ~/Movies/%(title)s.%(ext)s

利用.netrc身份认证

这样不必每次都带--username--password参数。

  • 先建立该文件,给权限。
touch $HOME/.netrc
chmod a-rwx,u+rw $HOME/.netrc
  • 修改内容,添加信息,例如
machine youtube login myaccount@gmail.com password my_youtube_password
  • 有两种使用方法
    • 每次youtube-dl命令添加参数--netrc
    • .conf配置文件中添加--netrc

举例说明

来看个最简单的例子

  • 首先列出可用格式
youtube-dl -F https://www.youtube.com/watch?v=iNQ_-rV5Utc&list=PLOrDt87s8A3q6Fnjc-sb_-OKRK_IVpo1B&index=19

该命令会后台执行,完成后会显示URL中视频的详细格式信息,如下:

[info] Available formats for iNQ_-rV5Utc:
format code  extension  resolution note
249          webm       audio only tiny   51k , opus @ 50k (48000Hz), 3.57MiB
250          webm       audio only tiny   64k , opus @ 70k (48000Hz), 4.17MiB
251          webm       audio only tiny  121k , opus @160k (48000Hz), 8.10MiB
140          m4a        audio only tiny  130k , m4a_dash container, mp4a.40.2@128k (44100Hz), 9.17MiB
160          mp4        256x144    144p   73k , avc1.4d400c, 25fps, video only, 2.66MiB
133          mp4        426x240    240p  134k , avc1.4d4015, 25fps, video only, 4.73MiB
278          webm       256x144    144p  134k , webm container, vp9, 25fps, video only, 6.36MiB
242          webm       426x240    240p  175k , vp9, 25fps, video only, 6.52MiB
134          mp4        640x360    360p  258k , avc1.4d401e, 25fps, video only, 8.96MiB
243          webm       640x360    360p  310k , vp9, 25fps, video only, 11.33MiB
135          mp4        854x480    480p  392k , avc1.4d401e, 25fps, video only, 13.73MiB
244          webm       854x480    480p  502k , vp9, 25fps, video only, 16.79MiB
136          mp4        1280x720   720p  604k , avc1.4d401f, 25fps, video only, 22.32MiB
247          webm       1280x720   720p  874k , vp9, 25fps, video only, 28.30MiB
137          mp4        1920x1080  1080p 1872k , avc1.640028, 25fps, video only, 76.95MiB
248          webm       1920x1080  1080p 2186k , vp9, 25fps, video only, 81.91MiB
18           mp4        640x360    360p  407k , avc1.42001E, mp4a.40.2@ 96k (44100Hz), 28.88MiB
22           mp4        1280x720   720p  444k , avc1.64001F, mp4a.40.2@192k (44100Hz) (best)
  • 下载需要视频
youtube-dl -f 18 https://www.youtube.com/watch?v=iNQ_-rV5Utc&list=PLOrDt87s8A3q6Fnjc-sb_-OKRK_IVpo1B&index=19

这里下载的格式选了18,是指在详细格式信息中的

18           mp4        640x360    360p  407k , avc1.42001E, mp4a.40.2@ 96k (44100Hz), 28.88MiB

下载会在后台执行,完成后会有提示。

[download] Destination: 【仰望同一片星空1_3】宇宙从哪里来?恒星是永恒的吗?-iNQ_-rV5Utc.mp4
[download] 100% of 28.88MiB in 00:01

[1]-  Done                    youtube-dl -f 18 https://www.youtube.com/watch?v=iNQ_-rV5Utc
[2]+  Done                    list=PLOrDt87s8A3q6Fnjc-sb_-OKRK_IVpo1B
  • 这里只是下载到当前目录,可以在.conf目录进行配置。
~/download$ ll
total 29580
-rw-r--r-- 1 laobaitu laobaitu 30285908 Sep 10  2019 【仰望同一片星空1_3】宇宙从哪里来?恒星是永恒的吗?-iNQ_-rV5Utc.mp4

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注