You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyTube异常:选中160kbps OPUS WEBM却下载64kbps低音质音频

问题

原本代码可正常下载YouTube对应URL的160kbps OPUS WEBM音频,但目前终端明明显示选中了该流,实际下载的却是低于要求的低音质版本。

我的代码

from pytube import YouTube 
from sys import argv

link = argv[1]
yt = YouTube(link)

print("Title: ", yt.title)

print("Ciew:", yt.views)

print(yt.streams.filter(only_audio=True))

video = yt.streams.filter(only_audio=True).last()

print(video)

video.download(r'E:\Users\XXXX\Desktop\YTDTEST')

print("DONE")

终端输出

PS E:\Users\XXX\Desktop\PyTube> python pydl2.py "https://www.youtube.com/watch?v=GaJcBJQi7bY"
Title:  Prince & The Revolution - Purple Rain (Official Video), HD (Digitally Remastered and Upscaled)
Ciew: 56547
[<Stream: itag="139" mime_type="audio/mp4" abr="48kbps" acodec="mp4a.40.5" progressive="False" type="audio">, <Stream: itag="140" mime_type="audio/mp4" abr="128kbps" acodec="mp4a.40.2" progressive="False" type="audio">, <Stream: itag="249" mime_type="audio/webm" abr="50kbps" acodec="opus" progressive="False" type="audio">, <Stream: itag="250" mime_type="audio/webm" abr="70kbps" acodec="opus" progressive="False" type="audio">, <Stream: itag="251" mime_type="audio/webm" abr="160kbps" acodec="opus" progressive="False" type="audio">]
<Stream: itag="251" mime_type="audio/webm" abr="160kbps" acodec="opus" progressive="False" type="audio">
DONE

解决方法

  • 精准指定目标流,不要依赖.last():.last()的排序逻辑可能随pytube版本变化,直接通过itag或明确过滤条件锁定160kbps OPUS流:
    # 方式1:用itag直接获取(251对应目标流)
    video = yt.streams.get_by_itag(251)
    
    # 方式2:多条件过滤后取第一个匹配项
    video = yt.streams.filter(only_audio=True, mime_type='audio/webm', abr='160kbps').first()
    
  • 升级pytube到最新版:旧版本可能存在流解析bug,执行命令更新:
    pip install --upgrade pytube
    
  • 验证下载文件的实际码率:系统属性显示的码率可能不准确,用FFmpeg检查真实码率:
    ffmpeg -i "你的下载文件.webm"
    
    查看输出里的bitrate字段确认实际音质。
  • 清除pytube缓存:缓存的旧流信息可能导致错误,删除%LOCALAPPDATA%\pytube目录后重新运行脚本。

内容的提问来源于stack exchange,提问作者Liam Harvey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 23:16:00