【问题标题】:pytube error while downloading video: urllib.error.HTTPError: HTTP Error 404: Not Found下载视频时出现pytube错误:urllib.error.HTTPError:HTTP错误404:未找到
【发布时间】:2021-10-03 06:25:06
【问题描述】:

我正在制作一个简单的 youtube 视频下载器。它下载的视频没有任何错误,但是当我尝试下载这个“video”时它给出了错误。我之前已经多次下载了这个视频而没有任何错误。

Traceback (most recent call last):
  File "c:\Users\Roshaan\AppData\Local\Programs\Python\Python39\Python\jarvis\test1.py", line 15, in <module>
    d = yt.streams.filter(res = "240p").first()
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\site-packages\pytube\__main__.py", line 311, in streams
    return StreamQuery(self.fmt_streams)
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\site-packages\pytube\__main__.py", line 214, in fmt_streams
    if "adaptive_fmts" in self.player_config_args:
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\site-packages\pytube\__main__.py", line 188, in player_config_args
    self._player_config_args = self.vid_info
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\site-packages\pytube\__main__.py", line 281, in vid_info 
    return dict(parse_qsl(self.vid_info_raw))
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\site-packages\pytube\__main__.py", line 109, in vid_info_raw
    self._vid_info_raw = request.get(self.vid_info_url)
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\site-packages\pytube\request.py", line 53, in get        
    response = _execute_request(url, headers=extra_headers, timeout=timeout)
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\site-packages\pytube\request.py", line 37, in _execute_request
    return urlopen(request, timeout=timeout)  # nosec
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 214, in urlopen
    return opener.open(url, data, timeout)
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 523, in open
    response = meth(req, response)
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 632, in http_response
    response = self.parent.error(
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 561, in error
    return self._call_chain(*args)
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 494, in _call_chain
    result = func(*args)
  File "C:\Users\Roshaan\AppData\Local\Programs\Python\Python39\lib\urllib\request.py", line 641, in http_error_default      
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found

我不明白为什么会发生这种情况。我看到其他人提出了同样的问题,并更新了 pytube,它接受了其他人的解决方案,但对我没有用。这是我的代码

yt = YouTube("https://www.youtube.com/watch?v=wZ6W3ryNVNE&list=PLqzeul28y04UGw8RHAN37Gjh0ZLmg3-qe")
d = yt.streams.filter(res = "240p").first()
d.download()

【问题讨论】:

    标签: python pytube


    【解决方案1】:

    此错误是pytube 包中反复出现的问题。每次更新后似乎都已修复,但随后又回到了这个问题。如果您已经运行pip install --upgrade pytube 并且问题仍然存在,那么您将不得不等待下一次更新。

    在等待期间,我建议您使用 pytube...youtube_dl 的替代品,您可能需要检查一下,因为它更可靠。官方websiteinstallation

    【讨论】:

    • 我从 pytube 10.9.2 升级到 10.9.3 但这并没有解决问题。
    • 那么您可能希望使用youtube_dl 作为替代方案,直到下次更新pytube
    • 没问题,兄弟。 :-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-21
    • 2017-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多