如何使用youtube-dl下载1080p分辨率的YouTube视频?
解决youtube-dl下载YouTube 1080p MP4视频的问题
正确配置(静音1080p MP4)
针对你不需要音频、仅需1080p MP4视频的需求,使用以下配置即可:
ydl_opts = { # 优先选择1080p的MP4视频流,无该流时自动匹配低于1080p的最高清MP4视频流 "format": "bestvideo[ext=mp4][height=1080]/bestvideo[ext=mp4][height<=1080]", "outtmpl": "/my/video/output/path/%(title)s.%(ext)s", # 替换为你的实际输出路径,建议保留文件名模板 "noplaylist": True, # 避免误下载整个播放列表 }
之前配置的问题分析
- 你最初用
"format": "bestvideo[height=1080]/best[height=1080]"报错,是因为YouTube 1080p及以上分辨率的视频通常为视频与音频流分离状态,且该配置未限定MP4格式,可能匹配到了不支持的容器格式。 - 临时方案中出现的
Skipping fragment问题,大概率是youtube-dl版本过旧或网络不稳定导致的,可通过以下方式解决:- 更新youtube-dl到最新版本
- 在配置中添加重试和断点续传参数:
ydl_opts.update({ "fragment_retries": 10, # 增加片段重试次数 "retries": 5, "continuedl": True, # 支持断点续传 })
额外排查步骤
如果上述配置仍无法下载1080p视频,先确认该视频是否真的存在1080p MP4流:
- 用命令行执行:
youtube-dl -F https://www.youtube.com/watch?v=rU8_Fg103ZQ(替换为你的目标视频链接) - 查看输出的格式列表,找到标注
1080p且ext为mp4的视频格式代码(通常为137) - 直接用格式代码指定下载:
ydl_opts = { "format": "137", # 替换为你查到的1080p MP4格式代码 "outtmpl": "/my/video/output/path/%(title)s.%(ext)s", }
内容的提问来源于stack exchange,提问作者ishandutta2007
相关产品推荐
相关产品推荐

