type
status
date
slug
summary
tags
category
icon
password
Sub-item
Parent item

前言

如果你是一个喜欢从YouTube等视频网站下载视频的人,你可能已经知道了youtube-dl这个强大的命令行工具。它可以让你轻松地下载各种格式和分辨率的视频,甚至是字幕和评论。但是,最近你可能也发现了,youtube-dl的下载速度变得非常慢,甚至有时候会失败。这是因为YouTube对youtube-dl进行了一些反制措施,导致它无法正常工作。那么,有没有什么替代方案呢?
答案是有的,它就是yt-dlp。yt-dlp是一个基于youtube-dl的分支项目,它不仅继承了youtube-dl的所有功能,还添加了一些新的特性和修复了一些问题。例如,它可以绕过YouTube的限速,支持SponsorBlock API,可以下载YouTube的剪辑和故事,可以指定格式的排序方式,可以嵌入缩略图,可以下载部分年龄限制的内容,等等。你可以在这里查看yt-dlp的完整介绍和文档。
那么,如何使用yt-dlp呢?其实,它的用法和youtube-dl非常相似,如果你已经熟悉youtube-dl的命令,你可以很快地上手yt-dlp。下面,我将给出一些常见的用法示例,希望对你有所帮助。

安装yt-dlp

首先,你需要安装Python和ffmpeg,这两个是yt-dlp的依赖。你可以从这里下载Python,从这里下载ffmpeg。安装Python时,请确保勾选了pip和添加系统环境变量的选项。安装ffmpeg时,请把bin目录添加到系统环境变量中。
然后,你可以用pip来安装yt-dlp,只需在命令行中输入:
或者,你也可以直接从这里下载yt-dlp的exe文件,然后把它放到系统环境变量的目录中,比如和ffmpeg.exe放在一起。

下载视频

yt-dlp支持下载超过1000个网站的视频,你只需要提供视频的URL,就可以下载它。比如,我想下载这个视频:
Video preview
 
我可以直接输入
这样,yt-dlp就会自动选择最佳的视频格式和音频格式,然后下载并合并它们。如果你想指定输出的文件格式,你可以使用--merge-output-format参数,比如:
这样,yt-dlp就会把视频和音频合并成mp4格式的文件。

查看和选择视频格式

如果你想查看视频有哪些可用的格式和分辨率,你可以使用-F参数,比如:
这样,yt-dlp就会列出视频的所有格式,每个格式都有一个ID,一个扩展名,一个分辨率,一个帧率,一个文件大小,一个视频编码,一个音频编码等信息。如果是audio only,表示只有音频,没有视频;如果是video only,表示只有视频,没有音频。你可以根据这些信息,选择你想要的格式,然后使用-f参数来下载,比如:
这样,yt-dlp就会下载ID为22的格式,如果你想下载视频和音频分开的格式,你可以用+号来连接两个ID,比如:
这样,yt-dlp就会下载ID为137的视频格式,也就是mp4格式,1920x1080分辨率的视频,以及ID为140的音频格式,也就是m4a格式的音频,然后合并它们。
如果你不想指定具体的ID,而是想让yt-dlp自动选择最佳的格式,你可以使用一些特殊的符号,比如:
这样,yt-dlp就会选择最佳的mp4视频和m4a音频,然后合并它们。你还可以使用其他的符号,比如bestworstheightwidthabrvbr等,来指定你想要的格式条件

下载播放列表

如果你想下载一个播放列表中的所有视频,你只需要提供播放列表的URL,就可以下载它。比如,我想下载这个播放列表:
 
我可以直接输入
这样,yt-dlp就会下载播放列表中的所有视频,按照默认的格式和顺序。如果你想指定输出的文件格式,你可以使用--merge-output-format参数,比如:
这样,yt-dlp就会把所有视频和音频合并成mp4格式的文件。
如果你想指定下载的视频格式,你可以使用-f参数,比如:
这样,yt-dlp就会下载ID为22的格式
如果你想指定下载的视频顺序,你可以使用--playlist-reverse或--playlist-random参数,比如:
这样,yt-dlp就会按照播放列表的倒序来下载视频。
如果你想指定下载的视频范围,你可以使用--playlist-start,--playlist-end或--playlist-items参数,比如:
这样,yt-dlp就会下载播放列表中的第5到第10个视频。

其他用法

除了下载视频和播放列表,yt-dlp还有一些其他的用法,比如:
  • 下载字幕:你可以使用-write-sub参数来下载视频的字幕,如果你想指定字幕的语言,你可以使用-sub-lang参数,比如:
这样,yt-dlp就会下载英文和中文的字幕,如果有的话。你还可以使用--embed-subs参数来把字幕嵌入到视频文件中,如果支持的话。
  • 下载评论:你可以使用-write-comments参数来下载视频的评论,如果支持的话,比如:
这样,yt-dlp就会下载视频的评论,并保存为JSON格式的文件。
  • 下载缩略图:你可以使用-write-thumbnail参数来下载视频的缩略图,如果有的话,比如:
这样,yt-dlp就会下载视频的缩略图,并保存为JPG或PNG格式的文件。你还可以使用--embed-thumbnail参数来把缩略图嵌入到视频文件中,如果支持的话。
  • 下载元数据:你可以使用-write-info-json参数来下载视频的元数据,比如标题,描述,上传者,时长,标签等,比如:
这样,yt-dlp就会下载视频的元数据,并保存为JSON格式的文件。你还可以使用--embed-metadata参数来把元数据嵌入到视频文件中,如果支持的话。
  • 下载SponsorBlock数据:你可以使用-write-sponsorblock参数来下载视频的SponsorBlock数据,比如赞助商,片头,片尾,互动等,比如:
这样,yt-dlp就会下载视频的SponsorBlock数据,并保存为JSON格式的文件。你还可以使用--remove-sponsor-segments参数来移除视频中的SponsorBlock部分,如果支持的话。

结语

以上就是我对yt-dlp的简单介绍和使用教程,希望对你有所帮助。yt-dlp是一个非常强大和灵活的视频下载工具,它可以让你从各种网站下载你想要的视频,而且还有很多高级的功能和选项,你可以在官方文档中查看更多的信息。如果你有任何问题或建议,你可以在GitHub上提出。感谢你的阅读,祝你使用愉快!
Aimer-白色蜉蝣羊文学-12 hugs (like butterflies)
Loading...