els*_*hen 20 upgrade youtube-dl
我收到一条消息,当我尝试从 youtube 下载播放列表时,必须更新 youtube-dl 当我尝试更新时,我收到以下错误消息:
elshahen@elshahen-LAB:~$ youtube-dl -cit https://www.youtube.com/playlist?list=PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2
[youtube:playlist] PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2: Downloading page #1
WARNING: [youtube:playlist] PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2: Playlist page is missing OpenGraph title, falling back ...
ERROR: Unable to extract title; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output. Make sure you are using the latest version; type youtube-dl -U to update.
Run Code Online (Sandbox Code Playgroud)
Sai*_*nce 33
我确实遇到了这个问题..试试这种方式......
删除旧版本的 youtube-dl
sudo apt-get remove -y youtube-dl
Run Code Online (Sandbox Code Playgroud)
从官网下载最新版本
sudo wget https://yt-dl.org/latest/youtube-dl -O /usr/local/bin/youtube-dl
Run Code Online (Sandbox Code Playgroud)
更改下载文件的权限
sudo chmod a+x /usr/local/bin/youtube-dl
Run Code Online (Sandbox Code Playgroud)
查看此链接了解更多详情。
希望这对你有帮助..
使用webUpd8的ppa:ppa:nilarimogard/webupd8
它始终包含最新的 up2date 版本。
sudo apt-get remove youtube-dl
sudo apt-add-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install youtube-dl
Run Code Online (Sandbox Code Playgroud)
我尝试下载您问题中的播放列表,但收到了与您相同的错误消息。我没有更新工作正常的 youtube-dl,而是转到您的播放列表网页,复制 URL 并从终端运行以下命令:
sudo apt install jq # command-line JSON processor
cd Desktop/
youtube-dl -j --flat-playlist "https://<yourYoutubePlaylist>" | jq -r '.id' | sed 's_^_https://youtu.be/_' > batch-file.txt
Run Code Online (Sandbox Code Playgroud)
这些命令的结果是该网页上所有链接的列表。我制作了一个批处理文件,其中包含所有视频的 URL 列表(只有视频,而不是其他链接),每个视频 URL 都在一个新行上。之后,我可以按照这些说明使用单个命令下载所有视频。
创建一个批处理文件,该文件是一个文本文件,其中包含您要下载的 YouTube 视频 URL 列表。这些 URL 应该排列在一个列表中,每行只有一个 URL,没有其他内容,列表中的每个 URL 都有一个新行。使用易于记忆的名称(如 batch-file.txt)保存批处理文件。如果多个文件都在 YouTube 中的同一用户、频道或播放列表网页上,您可以通过运行以下命令生成一个文本文件,其中包含该页面上的所有链接的列表:
youtube-dl -j --flat-playlist "https://<yourYoutubePlaylist>" | jq -r '.id' | sed 's_^_https://youtu.be/_' > batch-file.txt
Run Code Online (Sandbox Code Playgroud)从终端运行:
youtube-dl -ct --simulate --batch-file='/path/to/batch-file.txt'
Run Code Online (Sandbox Code Playgroud)这是基本命令,但是您还需要添加要下载的视频格式,否则您可能会发现自己下载的视频格式不是您想要的。所以首先模拟你的下载,看看你想要的格式是否可用:
youtube-dl -ct -f 34 --simulate 'http://www.youtube.com/some-alphanumeric-string'
Run Code Online (Sandbox Code Playgroud)如果视频格式不可用,您将收到一条错误消息:requested format not available. 如果视频格式可用,则在使用该--simulate选项时不会收到任何错误消息。您还可以添加-F选项以查看所有有效格式,如下所示:
youtube-dl -F 'http://www.youtube.com/some-alphanumeric-string'
Run Code Online (Sandbox Code Playgroud)在上面的命令中,我使用了常见的 flv 360p 视频格式:-f 34. 您可能更喜欢使用 .flv 480p 视频格式-f 35。将所需的视频格式添加到命令后,命令将变为如下所示:
youtube-dl -f 35 -ciw -o "%(title)s.%(ext)s" --batch-file='/path/to/batch-file.txt'
Run Code Online (Sandbox Code Playgroud)
我没有--simulate在最后一个命令中添加选项,所以这个命令会被真正执行。
| 归档时间: |
|
| 查看次数: |
35820 次 |
| 最近记录: |