Simply find the best possible online shopping DL deals
Shop DL products and compare prices and listings on popular online marketplaces.
In this comprehensive Youtube-dl tutorial, we are going to learn what is Youtube-dl and the list of most commonly used Youtube-dl commands with examples to download audio and video streams from Internet in Linux operating systems.
Youtube-dl is a most popular command line YouTube downloader application. Youtube-dl can be able to download a single track or the entire playlist in one go.
Youtube-dl is not just to download videos from YouTube, but also from a lot of other websites. You can view the complete list of supported sites here.
It is a free and open source program written in Python. It supports GNU/Linux, Mac OS X and Microsoft Windows.
Youtube-dl can be installed in many ways. Let us see them all.
The officially recommended way to install Youtube-dl is just download it, save it in your $PATH, make it executable and start using it right away.
$ sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
If you don't have curl, use wget instead:
$ 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
Alternatively, you can…
随着越来越多的视频网站不再提供下载选项,想来不少人应该都有下载在线视频的需求,这里我想推荐一款开源免费但功能强大的视频下载工具——youtube-dl。少数派此前介绍了 IINA 这款播放器,IINA 的在线视频功能就是通过 youtube-dl 实现的。youtube-dl 虽然名字带有 Youtube,但实际上可以支持许多视频网站,Vimeo、Tumblr 乃至优酷、腾讯视频或是哔哩哔哩上面的视频都可以通过它下载。youtube-dl 同时提供了丰富的选项,可以选择下载的画质、格式或者下载字幕等等。但作为一款命令行软件,没有 GUI 可能让不少人对其望而却步或是无从入手,希望这篇文章能够帮助大家熟悉并上手这款软件。
这篇文章将会介绍如何安装 youtube-dl、如何实现最基本的视频下载、如何进行文件下载位置等一系列设置以及如何通过 Automator 简化下载过程。
在安装 youtube-dl 之前,我想先介绍一下 OS X 下的一款著名包管理应用 —— Homebrew。它就类似命令行软件的 App Store,通过这款软件可以很方便地实现命令行软件的安装、管理与更新。 Homebrew 的安装也很方便,只需要打开终端,将下面的命令复制进去并回车,就可以等待 Homebrew 自行安装完毕了。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装 Homebrew 后,我们即可进行 youtube-dl 的安装了,仍然只需要将下面的命令复制进终端,youtube-dl 就会自动安装完毕。
brew install youtube-dl
安装好 youtube-dl 后,我们就可以进行在线视频的下载了,不过有部分视频网站比如 Youtube,高画质的视频和音频是分开的,只使用 youtube-dl 的话会将视频和音频分别下载成两个文件。好在 youtube-dl 也提供了解决方案,我们只需要下载另一个命令行工具 —— ffmpeg 即可,在下载后 youtube-dl 会自动调用 ffmpeg 将视频与音频合成一个文件。ffmpeg 的安装仍然通过 Homebrew 进行,只需要执行下面这个命令即可:
brew install ffmpeg
到此为止,youtube-dl 的安装过程已经完全结束,只需要这样短短三步,不过在开始下载之前,我想首先介绍一下如何对 youtube-dl 进行更新。因为部分视频网站会不定时进行调整,避免被下载视频,因此有时我们需要更新 youtube-dl 以便继续进行视频下载。更新 youtube-dl 我想介绍两种方法,一种是单独更新 youtube-dl,另一种是直接更新 Homebrew 管理的所有软件。单独更新 youtube-dl 的命令如下:
brew upgrade youtube-dl
而假如不指定 youtube-dl,即可更新 Homebrew 管理的所有软件了,命令如下:
brew upgrade
通过 youtube-dl 下载视频的过程也如安装一样简单,首先我们复制下来视频的网址,然后在前面加上 youtube-dl输入终端即可等待下载完成,需要注意的是,视频地址前需要插入一个空格。下载过程中 youtube-dl 会显示下载进度和速度,下载和合并视频文件完成后只需要回车确认就可以完成整个过程了。youtube-dl 会自动下载最高画质的视频,默认的下载文件格式是 mp4,而下载地址是我们开启终端的位置,假如打开终端后我们没有进行其他操作,那么这个位置就是我们用户的主文件夹。另外,对于 Youtube 一类的网站,因为高清视频和音频是分开的,所以 youtube-dl 会调用 ffmpeg 合并两个文件,这个过程默认的输出文件是 mkv 格式。
上面这样说可能不够直观,那么接下来我们通过一个例子来看一遍下载的过程。首先复制下来视频地址,然后在前面加上 youtube-dl输入终端,接下来我们就会看到 youtube-dl 显示出了下载进度。
复制视频地址
将命令输入终端
显示下载进度
等待回车确认
下载完成
在主文件夹内可以找到视频文件
将多个视频地址输入终端
下载完成后的多个视频文件下载整个视频列表则只需要将视频列表的地址加上 youtube-dl输入终端即可。
复制视频列表地址
输入视频列表地址
视频列表下载完成
在主文件夹内找到视频列表
虽然不进行设置就进行下载已经满足了我们的基本需求,但还是有两个地方不尽如人意:一点是下载目录并不是我们熟悉的下载文件夹,而是用户的主文件夹;另一点则是下载的视频自带一串奇怪的字母和数字。这串字符其实是 Youtube 上面的视频 ID,但我们保存的时候未必希望留下这个 ID,这就需要我们进行一定的设置。对于下载路径和文件名的设置有两种方式:一种是每次下载的时候添加说明设置的一串字符,这样可以设置单独的一次下载;另一种则是对于 youtube-dl 进行整体设置。因为两种方法其实是相通的,所以我们从单独一次下载的设置开始说明。
Youtube-dl 进行输出文件设置的关键词是 -o,这个关键词后面单括号括起的字符串会被理解为对应的设置,我们先看一个十分实用的例子:
youtube-dl -o '~/Downloads/%(title)s.%(ext)s' https://www.youtube.com/watch?v=kBdfcR-8hEY
这里我们可以将这个字符串分成两部分理解,前半部分 ~/Downloads/ 是下载路径的设置,这个例子将下载路径设置为了下载文件夹,如果要下载到其他文件夹,只需要将这里替换成其他地址就可以了,当然假如不需要调整下载位置也可以省略这部分;后半部分 %(title)s.%(ext)s 则是指定了文件名的格式,%(title)s 是视频的标题,%(ext)s 则是视频的文件扩展名,因此这个设置就是将文件名设置为 视频名.扩展名,这样就不会出现视频 ID 的那串奇怪字符了。
Youtube-dl 提供了大量的可选项用于设置文件名,包括视频 ID、URL、标题、时长甚至观看数量、点赞数量等等,这些都可以在文档中找到,通过修改 -o 后面的设置字符串即可实现。
接下来我们再看一个稍微复杂的例子,这个例子介绍了下载一个用户全部播放列表时的设置:
youtube-dl -o '%(uploader)s/%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s' https://www.youtube.com/user/TheLinuxFoundation/playlists
这个例子中 %(uploader)s 是上传者或者频道的名字,%(playlist)s 是视频列表名,%(playlist_index)s 则是视频在视频列表中的编号,因此这个例子下载后会在主文件夹下出现 TheLinuxFoundation 文件夹,里面每个视频列表会保存成一个文件夹,视频则是 编号-文件名.扩展名 的格式。
虽然上面的设置方法功能足够强大,可是像我一样的人可能会希望默认的下载路径不在主文件夹而在下载文件夹内,以免每次都要设置,这种情况我们就需要对 youtube-dl 的设置文件进行修改,在 OS X 下,设置文件的地址是 /etc/youtube-dl.conf。不过如果不进行进一步修改,通过 Finder 是没办法直接进入 etc 文件夹的,但我们可以通过 Go to Folder 实现。
GitHubは米国時間11月16日、オープンソースプロジェクトの「youtube-dl」を復活させた。youtube-dlはPythonで書かれたライブラリーで、ユーザーはこれを利用して、YouTube動画で使われているソースの音声ファイルや映像ファイルをダウンロードできる。
GitHubは、米レコード協会(RIAA)からのデジタルミレニアム著作権法(DMCA)に基づく削除要請を受け、10月23日にこのライブラリーをポータルから削除していた。この要請は議論の的となった。
RIAAはGitHubに送付した書簡の中で、「このソースコード(youtube-dlライブラリー)の明確な目的は、(i)YouTubeなどの許可されたストリーミングサービスで用いられている技術的保護措置を回避し、(ii)許可なく(中略)ミュージックビデオや録音された音声を複製して配布」することだと主張した。
さらに同プロジェクトのソースコードについて、「著作権で保護された以下の作品の複製や配布に使われていることを明確に示している」と述べ、複数の実例を挙げた。
RIAAはDMCAの第1201条を根拠として、たとえyoutube-dlライブラリー自体に著作権を侵害するようなコードが含まれていなかったとしても、著作権保護を回避できるツールを提供することによって著作権を侵害していると主張していた。
だが、GitHubは16日付けのブログで、このyoutube-dlプロジェクトの問題を担当することになった電子フロンティア財団(EFF)の弁護団から送られた書簡を掲載し、このライブラリーがDMCAの第1201条に違反している事実はないと述べた。
書簡では、youtube-dlライブラリーはYouTube動画の技術的保護を回避しているわけではなく、DMCA第1201条に違反していないため、youtube-dlのリポジトリーを復元するのが望ましいとされている。
この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。