所有分类
  • 所有分类
  • 幼儿课堂

Linux系统中使用youtube-dl下载YouTube网站视频

问题背景:工作中,想从YouTube网站上下载所需的视频。

(Windows电脑中用三方软件、修改网址、在线网站、插件工具等方法均搞不定)

本文介绍一种终极解决方法:

在Linux系统中使用youtube-dl工具来下载各种视频网站上的视频内容。

(注意:不仅仅限于YouTube网站上的视频)

1、安装youtube-dl

youtube-dl 的官网:

youtube-dl 的GitHub项目地址:

youtube-dl支持的网站列表:

youtube-dl是一个命令行工具,可以下载youtube.com和其他网站(详细网站列表见链接)上的视频内容。

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

不受限于电脑的操作系统,Linux、Windows、MacOS都可以使用,本文主要介绍Linux下的使用。

下载安装youtube-dl的几种方法:

(1)

sudo curl -L -o /usr/local/bin/youtube-dl

sudo chmod a+rx /usr/local/bin/youtube-dl

(2)

sudo wget -O /usr/local/bin/youtube-dl

sudo chmod a+rx /usr/local/bin/youtube-dl

(3)

sudo pip install –upgrade youtube_dl

备注:youtube-dl是通过pypi(Python Package Index)分发的,如果电脑里有pip(package installer for Python.),用这种方法很好。而且还可以更新到最新版本 –upgrade。本文介绍的就是这种方法。

(4)

brew install youtube-dl

经过检查,目前电脑里还没有pip,所以需要先下载安装pip。

不过,安装pip时会需要使用setuptools中的模块,所以,我们还需先下载安装setuptools。

视频下载网址如何查找百度_youtube视频下载网址_视频下载网址过期了怎么下载

视频下载网址如何查找百度_视频下载网址过期了怎么下载_youtube视频下载网址

本地Windows电脑下载好setuptools和pip源安装包,可以用WinSCP将其传到Linux计算云电脑中。

youtube视频下载网址_视频下载网址过期了怎么下载_视频下载网址如何查找百度

解压并安装setuptools

# cd /usr1/Softwares

# unzip setuptools-41.0.1.zip // 解压

# cd setuptools-41.0.1

# python setup.py install // 安装setuptools

解压并安装pip

# cd ..

# tar –zxvf pip-19.1.1.tar.gz // 解压

# cd pip-19.1.1

# python setup.py install // 安装pip

视频下载网址如何查找百度_视频下载网址过期了怎么下载_youtube视频下载网址

安装youtube-dl

# cd ..

# pip install –upgrade youtube-dl

视频下载网址过期了怎么下载_youtube视频下载网址_视频下载网址如何查找百度

警示:2020年1月1号之后不在维护Python 2.X版本,而且后续版本的pip也不再支持Python 2.X了。

2、用youtube-dl下载视频到Linux电脑中

# youtube-dl –list-formats // 查看当前地址链接的视频的所有可下载的格式,但不进行下载。

# youtube-dl –f 22 // 执行下载,22表示格式标志码。

youtube视频下载网址_视频下载网址过期了怎么下载_视频下载网址如何查找百度

视频下载网址如何查找百度_youtube视频下载网址_视频下载网址过期了怎么下载

在Linux计算云电脑中下载完成!

# youtube-dl –help命令可查看其它更全的操作。

也可以从youtube-dl的GitHub项目网站上看到更详细的说明信息。

单独下载纯视频、纯音频、字幕,然后合成

从上述的 –list-formats 选项命令中可知,某一视频资源有多种音频视频格式,而且一般只有少量是音视频合成好的。

如果想下载更高质量的音频、视频,然后自己合成,该怎么办?

使用youtube-dl -f 来选择下载列出的任何一条资源(单独视频或单独音频)。若想直接下载更高质量完整视频(如4K),使用youtube-dl配合ffmpeg来实现。

如果系统中安装了ffmpeg的话, youtube-dl 会自动合并下下好的视频和音频, 然后自动删除单独的音频、视频文件。

安装ffmpeg

是一套开源免费软件,可以处理视频、音频等多媒体文件和流。

# apt-get update

# apt-get upgrade

# apt-get install ffmpeg

安装ffmpeg后,使用下面的命令就可以下载指定质量的视频和音频并自动合成。

# youtube-dl –list-formats

# youtube-dl –list-subs

# youtube-dl –f 135+251 –write-auto-sub

视频下载网址如何查找百度_视频下载网址过期了怎么下载_youtube视频下载网址

其中 –list-subs选项命令可以查看此资源的字幕captions情况。

而 –write-auto-sub选项命令可以自动下载一个字幕(一般默认是英语en字幕)。

视频下载网址如何查找百度_视频下载网址过期了怎么下载_youtube视频下载网址

注意:135 标记的是纯视频,251标记的是纯音频,在想音视频合成下载时,必需把视频标记放在加号前面。所以选项命令必需是 –f 135+251,如果写成251+135会报错。

下载的音、视合成的视频格式被自动设成.mkv格式,另外还有一个单独的.vtt格式的字幕。

视频下载网址过期了怎么下载_视频下载网址如何查找百度_youtube视频下载网址

3、用WinSCP将视频从Linux计算云传到本地Windows电脑中

视频下载网址如何查找百度_视频下载网址过期了怎么下载_youtube视频下载网址

4、升级整理Linux中的python等软件

在上述“安装youtube-dl”的时候,发现此Linux电脑中的python还是2.7版本的,并警示:在2020年1月1号之后就不在维护Python 2.X版本了,而且后续版本的pip也不再支持Python 2.X。

所以需要升级并整理一下此电脑中的Python等软件。

$ python –version

Python 2.7.12

但是,当

$ python3 –V

Python 3.5.2

发现此电脑已经也装有 python3.5 了。

所以现在需要修改一下系统的默认Python为 Python 3.X。

另外,Python 2.X也建议保留,别卸载、别删除,因为可能会有一些东西是在2.X版本玩的。

一般Linux系统中,软件的二进制文件都可以在 /usr/bin 或 /usr/local/bin (这个优先级更高)找到。

下面截图中也可以看到,新安装的pip、youtube-dl软件也都是默认放在 /usr/local/bin目录中的。

$ ls –al /usr/bin

视频下载网址如何查找百度_youtube视频下载网址_视频下载网址过期了怎么下载

在 /usr/bin 下面查看Python的路径,可以看到python链接的是 python 2.7。所以,执行python就相当于执行python 2.7。

另外,再查看下 /usr/local/bin 的情况。

$ ls –al /usr/local/bin

视频下载网址如何查找百度_视频下载网址过期了怎么下载_youtube视频下载网址

用修改链接文件方法来整理Python

$ ls –al /usr/bin | grep python // 查看安装目录下python相关文件

$ sudo rm /usr/bin/python // 删除原来的python软链接

$ ls –al /usr/bin | grep python

$ sudo ln –s /usr/bin/python3.5 /usr/bin/python // 创建新的软链接指向已有的3.5版本

$ ls –al /usr/bin | grep python

$ python –V // 查看此时python的版本

Python 3.5.2

用update-alternatives方法来整理Python

这个update-alternatives是Debian系提供的一个工具(非Debian系的Linux不适用),原理上类似通过链接的方式来整理电脑里的相同软件的不同版本,不过其切换过程非常方便。

但是,如果使用中很少做软件的版本切换,大多数情况都使用Python 3.5的话,上述用修改软链接文件的方法就足够了。

$ sudo update-alternatives –list python // 先列出所有可用的Python替代版本的信息

update-alternatives: error: no alternatives for python

出现错误。

表示当前电脑里的Python替代版本信息还没有被添加进update-alternatives中。

将Python的替代版本信息添加进update-alternatives中。

$ sudo update-alternatives –install /usr/bin/python python /usr/bin/python3.5 2

$ sudo update-alternatives –install /usr/bin/python python /usr/bin/python2.7 1

$ sudo update-alternatives –list python

$ sudo update-alternatives –config python

$ python –version

Python 3.5.2

视频下载网址过期了怎么下载_视频下载网址如何查找百度_youtube视频下载网址

其中 –install 选项使用多个参数用于创建符号链接,最后一个“2”或“1”表示优先级,值越大优先级越高。自动模式下高优先级(2)链接选定的是Python 3.5版本。

其中 –config 命令是列出所有python版本信息,并可以很方便的选择切换任意版本。

至此,两种系统级整理软件版本(比如Python)的方法就介绍完毕!

用Python3.5重新安装整理setuptools和pip软件

上述的截图中能发现之前用python安装的setuptools和pip软件都是版本较低的,具体可以查看安装目录 /usr/local/bin

强迫症的我想卸载重装setuptools和pip软件。

卸载使用python setup.py install方式安装的包

(尝试过使用$ sudo apt –purge remove python-pip 结果根本找不到python-pip,因为pip不是通过apt install安装的,所以用apt卸载时根本找不到已安装包。)

正确的卸载方法是:

使用之前的Python2.7版本重新再装一次pip,并且设置好记录文件。

$ cd pip-19.1.1

$ python –version

$ python2 –version

$ sudo python2 setup.py install –record pipfile.txt

视频下载网址过期了怎么下载_youtube视频下载网址_视频下载网址如何查找百度

$ ls –al /usr/local/bin

可以看到pip(pip2、pip2.7)的确是被刚刚重新安装过。

而安装记录文件 pipfile.txt 被新建并存放在 /usr1/Softwares/pip-19.1.1/ 目录中。

$ sudo cat pipfile.txt | xargs rm –rf // 卸载删除这些pip安装文件

注意此时用管理员账户无法卸载删除,不被允许 permission denied。

所以需要用root的账号进行卸载删除操作。

# cat pipfile.txt | xargs rm –rf

$ ls -al /usr/local/bin

然后查看 /usr/local/bin 目录,的确已经没有pip相关软件了。

同理,卸载删除setuptools相关软件。

重新安装Python3.5版本的setuptools和pip,并升级youtube-dl

$ python –V

$ sudo python setup.py install –record py3setuptoolsRecord.txt

$ ls –al /usr/local/bin

$ sudo rm –f py2setuptoolsfile.txt // 强制删除之前Python2版本重装时产生的记录文件

$ cd ..

$ cd pip-19.1.1

$ sudo python setup.py install –record py3pipRecord.txt

$ ls –al /usr/local/bin

$ sudo rm –f pipfile.txt // 删除之前Python2重装的pip记录文件

注意由于youtube-dl是之前用pip2.7安装的,所以此时的youtube-dl会出现错误。

而且用管理员账号使用pip升级youtube-dl的时候也不成功。

视频下载网址过期了怎么下载_youtube视频下载网址_视频下载网址如何查找百度

使用root账号来升级youtube-dl软件版本。

视频下载网址过期了怎么下载_视频下载网址如何查找百度_youtube视频下载网址

搞定!

然后,使用2019.5.11的新版youtube-dl再下载个视频试试。

杨超导演在2016年“一席”栏目中以专业视角分析周星驰《喜剧之王》镜头的视频(个人超爱)。

# youtube-dl –list-formats

# youtube-dl –f 43

视频下载网址如何查找百度_youtube视频下载网址_视频下载网址过期了怎么下载

======End======

原文链接:http://www.wzcl.net/social/youtube/9940.html,转载请注明出处~~~
免责声明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!

0

评论0

万物复苏春之优惠活动!原398包年VIP,现198;原988终身VIP,现688。随着资源不断增多,随时提价!立即查看
显示验证码
没有账号?注册  忘记密码?