标签 youtube-dl 下的文章

Youtube-dl 是一个自由开源的命令行视频下载工具,可以用来从 Youtube 等类似的网站上下载视频,目前它支持的网站除了 Youtube 还有 Facebook、Dailymotion、Google Video、Yahoo 等等。它构架于 pygtk 之上,需要 Python 的支持来运行。它支持很多操作系统,包括 Windows、Mac 以及 Unix。Youtube-dl 还有断点续传、下载整个频道或者整个播放清单中的视频、添加自定义的标题、代理等等其他功能。

本文中,我们将来学习如何在 Ubuntu 16.04 上安装并使用 Youtube-dl 和 Youtube-dlg。我们还会学习如何以不同质量,不同格式来下载 Youtube 中的视频。

前置需求

  • 一台运行 Ubuntu 16.04 的服务器。
  • 非 root 用户但拥有 sudo 特权。

让我们首先用下面命令升级系统到最新版:

sudo apt-get update -y
sudo apt-get upgrade -y

然后重启系统应用这些变更。

安装 Youtube-dl

默认情况下,Youtube-dl 并不在 Ubuntu-16.04 仓库中。你需要从官网上来下载它。使用 curl 命令可以进行下载:

首先,使用下面命令安装 curl

sudo apt-get install curl -y

然后,下载 youtube-dl 的二进制包:

curl -L https://yt-dl.org/latest/youtube-dl -o /usr/bin/youtube-dl

接着,用下面命令更改 youtube-dl 二进制包的权限:

sudo chmod 755 /usr/bin/youtube-dl

youtube-dl 算是安装好了,现在可以进行下一步了。

使用 Youtube-dl

运行下面命令会列出 youtube-dl 的所有可选项:

youtube-dl --h

youtube-dl 支持多种视频格式,像 Mp4,WebM,3gp,以及 FLV 都支持。你可以使用下面命令列出指定视频所支持的所有格式:

youtube-dl -F https://www.youtube.com/watch?v=j_JgXJ-apXs

如下所示,你会看到该视频所有可能的格式:

[info] Available formats for j_JgXJ-apXs:
format code  extension  resolution note
139          m4a        audio only DASH audio   56k , m4a_dash container, mp4a.40.5@ 48k (22050Hz), 756.44KiB
249          webm       audio only DASH audio   56k , opus @ 50k, 724.28KiB
250          webm       audio only DASH audio   69k , opus @ 70k, 902.75KiB
171          webm       audio only DASH audio  110k , vorbis@128k, 1.32MiB
251          webm       audio only DASH audio  122k , opus @160k, 1.57MiB
140          m4a        audio only DASH audio  146k , m4a_dash container, mp4a.40.2@128k (44100Hz), 1.97MiB
278          webm       256x144    144p   97k , webm container, vp9, 24fps, video only, 1.33MiB
160          mp4        256x144    DASH video  102k , avc1.4d400c, 24fps, video only, 731.53KiB
133          mp4        426x240    DASH video  174k , avc1.4d4015, 24fps, video only, 1.36MiB
242          webm       426x240    240p  221k , vp9, 24fps, video only, 1.74MiB
134          mp4        640x360    DASH video  369k , avc1.4d401e, 24fps, video only, 2.90MiB
243          webm       640x360    360p  500k , vp9, 24fps, video only, 4.15MiB
135          mp4        854x480    DASH video  746k , avc1.4d401e, 24fps, video only, 6.11MiB
244          webm       854x480    480p  844k , vp9, 24fps, video only, 7.27MiB
247          webm       1280x720   720p 1155k , vp9, 24fps, video only, 9.21MiB
136          mp4        1280x720   DASH video 1300k , avc1.4d401f, 24fps, video only, 9.66MiB
248          webm       1920x1080  1080p 1732k , vp9, 24fps, video only, 14.24MiB
137          mp4        1920x1080  DASH video 2217k , avc1.640028, 24fps, video only, 15.28MiB
17           3gp        176x144    small , mp4v.20.3, mp4a.40.2@ 24k
36           3gp        320x180    small , mp4v.20.3, mp4a.40.2
43           webm       640x360    medium , vp8.0, vorbis@128k
18           mp4        640x360    medium , avc1.42001E, mp4a.40.2@ 96k
22           mp4        1280x720   hd720 , avc1.64001F, mp4a.40.2@192k (best)

然后使用 -f 指定你想要下载的格式,如下所示:

youtube-dl -f 18 https://www.youtube.com/watch?v=j_JgXJ-apXs

该命令会下载 640x360 分辨率的 mp4 格式的视频:

[youtube] j_JgXJ-apXs: Downloading webpage
[youtube] j_JgXJ-apXs: Downloading video info webpage
[youtube] j_JgXJ-apXs: Extracting video information
[youtube] j_JgXJ-apXs: Downloading MPD manifest
[download] Destination: B.A. PASS 2 Trailer no 2 _ Filmybox-j_JgXJ-apXs.mp4
[download] 100% of 6.90MiB in 00:47

如果你想以 mp3 音频的格式下载 Youtube 视频,也可以做到:

youtube-dl https://www.youtube.com/watch?v=j_JgXJ-apXs -x --audio-format mp3

你也可以下载指定频道中的所有视频,只需要把频道的 URL 放到后面就行,如下所示:

youtube-dl -citw https://www.youtube.com/channel/UCatfiM69M9ZnNhOzy0jZ41A

若你的网络需要通过代理,那么可以使用 --proxy 来下载视频:

youtube-dl --proxy http://proxy-ip:port https://www.youtube.com/watch?v=j_JgXJ-apXs

若想一条命令下载多个 Youtube 视频,那么首先把所有要下载的 Youtube 视频 URL 存在一个文件中(假设这个文件叫 youtube-list.txt),然后运行下面命令:

youtube-dl -a youtube-list.txt

安装 Youtube-dl GUI

若你想要图形化的界面,那么 youtube-dlg 是你最好的选择。youtube-dlg 是一款由 wxPython 所写的免费而开源的 youtube-dl 界面。

该工具默认也不在 Ubuntu 16.04 仓库中。因此你需要为它添加 PPA。

sudo add-apt-repository ppa:nilarimogard/webupd8

下一步,更新软件包仓库并安装 youtube-dlg

sudo apt-get update -y
sudo apt-get install youtube-dlg -y

安装好 Youtube-dl 后,就能在 Unity Dash 中启动它了:

现在你只需要将 URL 粘贴到上图中的 URL 域就能下载视频了。Youtube-dlg 对于那些不太懂命令行的人来说很有用。

结语

恭喜你!你已经成功地在 Ubuntu 16.04 服务器上安装好了 youtube-dl 和 youtube-dlg。你可以很方便地从 Youtube 及任何 youtube-dl 支持的网站上以任何格式和任何大小下载视频了。


via: https://www.howtoforge.com/tutorial/install-and-use-youtube-dl-on-ubuntu-1604/

作者:Hitesh Jethva 译者:lujun9972 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

我知道你已经看过如何下载 YouTube 视频。但那些工具大部分都采用图形用户界面的方式。我会向你展示如何通过终端使用 youtube-dl 下载 YouTube 视频。

youtube-dl

youtube-dl 是基于 Python 的命令行小工具,允许你从 YouTube.com、Dailymotion、Google Video、Photobucket、Facebook、Yahoo、Metacafe、Depositfiles 以及其它一些类似网站中下载视频。它是用 pygtk 编写的,需要 Python 解析器来运行,对平台要求并不严格。它能够在 Unix、Windows 或者 Mac OS X 系统上运行。

youtube-dl 支持断点续传。如果在下载的过程中 youtube-dl 被杀死了(例如通过 Ctrl-C 或者丢失网络连接),你只需要使用相同的 YouTube 视频 URL 再次运行它。只要当前目录中有下载的部分文件,它就会自动恢复没有完成的下载,也就是说,你不需要下载管理器来恢复下载。

安装 youtube-dl

如果你运行的是基于 Ubuntu 的 Linux 发行版,你可以使用下面的命令安装:

sudo apt-get install youtube-dl

对于任何 Linux 发行版,你都可以通过下面的命令行在你的系统上快速安装 youtube-dl:

sudo wget 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 下载视频:

要下载一个视频文件,只需要运行下面的命令。其中 “VIDEO\_URL” 是你想要下载视频的 url。

youtube-dl VIDEO_URL

以多种格式下载 YouTube 视频:

现在 YouTube 视频有不同的分辨率,首先你需要检查指定的 YouTube 视频可用的视频格式。可以使用 “-F” 选项运行 youtube-dl。它会向你显示出可用的格式。

youtube-dl -F http://www.youtube.com/watch?v=BlXaGWbFVKY

它的输出类似于:

Setting language
BlXaGWbFVKY: Downloading video webpage
BlXaGWbFVKY: Downloading video info webpage
BlXaGWbFVKY: Extracting video information
Available formats:
37      :       mp4     [1080×1920]
46      :       webm    [1080×1920]
22      :       mp4     [720×1280]
45      :       webm    [720×1280]
35      :       flv     [480×854]
44      :       webm    [480×854]
34      :       flv     [360×640]
18      :       mp4     [360×640]
43      :       webm    [360×640]
5       :       flv     [240×400]
17      :       mp4     [144×176]

在可用的视频格式中,选择你需要的一种。例如,如果你想下载 MP4 格式的,你可以:

youtube-dl -f 17 http://www.youtube.com/watch?v=BlXaGWbFVKY

使用 youtube-dl 下载视频字幕

首先检查是否有可用的视频字幕。使用下面的命令列出视频所有可用的字幕:

youtube-dl --list-subs https://www.youtube.com/watch?v=Ye8mB6VsUHw

下载所有字幕,但不包括视频:

youtube-dl --all-subs --skip-download https://www.youtube.com/watch?v=Ye8mB6VsUHw

下载整个播放列表

运行下面的命令下载整个播放列表。其中 “playlist\_url” 是你希望下载的播放列表的 url。

youtube-dl -cit playlist_url

youtube-dl 是一个多功能的命令行工具,它提供了很多功能。难怪这个命令行工具这么流行。


via: http://itsfoss.com/download-youtube-linux/

作者:alimiracle 译者:ictlyh 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出