PyTube 未下载正确质量的音频文件

问题描述 投票:0回答:1

当我第一次编写这段代码时,它工作得很好,并且会为我下载所选 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

出于某种原因,它只下载 64kbps 版本的音频,尽管我们从输出中看到,我相信使用了正确的代码,因此无法找出出了什么问题。

python python-3.x pytube
1个回答
0
投票

使用您的代码,您应该获得 160kbps 的 opus。如果没有,您可以尝试始终获得更高比特率的音频。

from pytube import YouTube
yt = YouTube('https://www.youtube.com/watch?v=GaJcBJQi7bY')
yt.streams.filter(only_audio=True).order_by('bitrate').desc().first().download()
© www.soinside.com 2019 - 2024. All rights reserved.