Как с помощью PyTube узнать какое максимальное качество у YouTube-видео?
Как узнать какое максимальное качество на видео?
То есть если например 1080P то выведет что это 1080,и тд
Ответы (2 шт):
Автор решения: JashOFHop
→ Ссылка
К примеру взял рандомную ссылку
import pytube
link = "https://www.youtube.com/watch?v=vr4V1yJXj_Y"
yt = pytube.YouTube(link)
stream = yt.streams.filter(only_audio=False)
Далее написав print(stream), у нас выводит словарь с характеристиками Stream. Вот так это будет выглядить:
[<Stream: itag="17" mime_type="video/3gpp" res="144p" fps="7fps" vcodec="mp4v.20.3" acodec="mp4a.40.2" progressive="True" type="video">, <Stream: itag="18" mime_type="video/mp4" res="360p" fps="30fps" vcodec="avc1.42001E" acodec="mp4a.40.2" progressive="True" type="video">, <Stream: itag="22" mime_type="video/mp4" res="720p" fps="30fps" vcodec="avc1.64001F" acodec="mp4a.40.2" progressive="True" type="video">, <Stream: itag="136" mime_type="video/mp4" res="720p" fps="30fps" vcodec="avc1.4d401f" progressive="False" type="video">, <Stream: itag="135" mime_type="video/mp4" res="480p" fps="30fps" vcodec="avc1.4d400c" progressive="False"
type="video">, <Stream: itag="134" mime_type="video/mp4" res="360p" fps="30fps" vcodec="avc1.4d401e" progressive="False" type="video">, <Stream: itag="133" mime_type="video/mp4" res="240p" fps="30fps" vcodec="avc1.4d400c" progressive="False" type="video">, <Stream: itag="160" mime_type="video/mp4" res="144p" fps="30fps" vcodec="avc1.4d400b" progressive="False" type="video">, <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="251" mime_type="audio/webm"
abr="160kbps" acodec="opus" progressive="False" type="audio">]
res отвечает за качество видео, и вы можете узнать его максимальное значение. Если необходимо скачать видео именно с качеством 720, то достаточно прописать перед download индекс
stream = yt.streams.filter(only_audio=False)[2].download()
Автор решения: daybefore
→ Ссылка
yt.streams.filter(file_extension='mp4').order_by('resolution')[-1]