python 在特定视频下载中使用PyTube时出现“KeyError:'content-length'”

lawou6xi  于 2022-12-28  发布在  Python
关注(0)|答案(1)|浏览(242)

我收到错误
密钥错误:"内容长度"
在下载视频的时候。特别是这个,每当我试图用1080p下载这个视频的时候,我就会得到错误。

    • 为了繁衍**

尝试用pytube. https://www.youtube.com/watch?v=6PDxyCLaTeU以1080p分辨率下载此视频

    • 代码**
from pytube import YouTube
yt = YouTube("https://www.youtube.com/watch?v=6PDxyCLaTeU")

yt.streams.filter(resolution="1080p").first().download()
    • 例外情况**
return int(head(url)["content-length"])
KeyError: 'content-length'
    • 系统信息**
  • Python版本:Python 3.9.2语言
  • Pytube版本:12.0.0
  • 用于安装pytube的命令:管道安装pytube
6ojccjat

6ojccjat1#

NISHANT Pacharne,我希望这个问题仍然相关。
我已经用pytube下载了几百个视频,但今天是我第一次遇到同样的问题。在看了网上所有的投诉,你在这里的帖子和我的案例后,我可以注意到一个共同的细节-所有导致这个问题的视频都有video_codec= avc1.64001e。
因此,如果您写入print(yt.streams.filter(resolution="1080p").first()),则会看到<class 'pytube.streams.Stream'>的字段,其中包括vcodec="avc1.64001e"
注:字段的实际名称为“video_codec”,而非“vcodec”;“vcodec”仅用于对象表示。
怎么修?我还不知道。也许我的发现能帮你。

相关问题