使用yt-dlp下载youtube视频

2024年第四季度google更新了youtube的相关协议导致很多在线downloader网站失效,yt-dlp是一款功能强大的命令行视频下载工具。

yt-dlp 是基于 youtube-dl 和 youtube-dlc 的开源项目,是 youtube-dl 的一个分支,youtube-dlc 停止活跃后,yt-dlp 成为活跃的替代品继续发展。核心技术基于 Python,具有跨平台特性,支持 Windows、MacOS、Linux 等系统。


下载yt-dlp

使用命令行

在cmd中输入pip install yt-dlp

使用yt-dlp –version验证安装


使用yt-dlp下载视频

yt-dlp --cookies path   #path替换为cookies路径
yt-dlp --cookies path -f bestvideo+bestaudio   #使用最高质量
yt-dlp ... url  #下载改url下的视频

基本命令

yt-dlp也提供了自动获取cookies的途径,以下是文档所提供的所有方式。

The easiest way to pass cookies is to let yt-dlp extract it from your browser (say, Chrome) using --cookies-from-browser chrome. In Linux, this searches for config in location ~/.config/google-chrome. In case you install Chrome using Flatpak, the config is located in ~/.var/app/com.google.Chrome. To pass the cookies from this location use --cookies-from-browser chrome:~/.var/app/com.google.Chrome/
If you wish to manually pass cookies, use the --cookies option, for example: --cookies /path/to/cookies/file.txt.
You can export your cookies to a text file without any third-party software by using yt-dlp's --cookies-from-browser option in conjunction with the --cookies option, for example: yt-dlp --cookies-from-browser chrome --cookies cookies.txt. yt-dlp will extract the browser cookies and save them to the filepath specified after --cookies. The resulting text file can then be used with the --cookies option. Note though that this method exports your browser's cookies for ALL sites (even if you passed a URL to yt-dlp), so take care in not letting this text file fall into the wrong hands.

更多功能

功能特性

  1. 多站点支持:能从数千个网站下载音视频,涵盖 YouTube、Vimeo、Twitch、TikTok、Bilibili、X(原 Twitter)等主流视频平台及众多小众网站。
  2. 格式选择:提供 MP4、WebM、FLV 等丰富的视频格式,可按需选择高清视频或仅音频文件,还能设置视频质量、分辨率等参数。
  3. 网络选项:支持代理设置、下载限速,可调整超时值,以适应不同网络环境,如通过 “–proxy socks5://user:pass@127.0.0.1:1080/” 设置代理。
  4. 地理限制绕过:可突破某些网站的地理限制,获取受限视频内容。
  5. 视频选择:能从播放列表或频道中挑选特定视频下载,支持下载整个播放列表或其中的特定部分。
  6. 下载选项:具备断点续传、并发下载片段等高级功能,默认尝试三次下载,增加下载成功机会。
  7. 文件系统选项:可自定义文件保存路径和命名规则,便于管理下载的视频文件。
  8. 元数据修改:允许用户修改视频的标题、描述等元数据,提供更多自定义选项。
  9. 插件系统:通过插件扩展功能,如集成 SponsorBlock 来跳过广告,用户可安装和开发自定义插件。
  10. 部分下载和章节分割:支持基于时间戳或章节进行视频部分下载,并分割成多个文件。
  11. 多线程片段下载:能并行下载 m3u8/mpd 视频的多个片段,提升下载效率。
  12. aria2c 与 hls/dash:可使用 aria2c 作为 dash (mpd) 和 hls (m3u8) 格式的外部下载器,增强下载能力。
  13. 新增和修复的提取器:不断添加新提取器并修复现有提取器,以支持更多视频网站。
  14. 多路径和输出模板:能为不同类型文件设置不同的输出模板和下载路径,增加灵活性。
  15. 输出模板改进:输出模板支持日期时间格式化、数值偏移、对象遍历等,提供更高级的自定义。
  16. 缩略图下载:支持下载视频缩略图,为用户提供额外媒体信息,可用于视频预览。
  17. 解决方案:能绕过 ssl 证书验证等,从需要特殊处理的安全网站下载视频。
  18. 字幕功能:允许下载视频字幕,可指定字幕格式和语言,方便外语学习等。
  19. 后处理选项:提供视频合并、格式转换等后处理任务选项,可结合 FFmpeg 对下载视频进一步处理。