python pytube urllib.error.HTTPError:HTTP 错误 404:未找到

时间:2021-05-27 12:36:01

标签: python pytube

from pytube import YouTube
url = "link"

yt = YouTube(url)
stream = yt.streams.first()
stream.download()

这段代码给了我以下错误:

Traceback (most recent call last):
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\runpy.py", line 185, in _run_module_as_main
    mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\runpy.py", line 111, in _get_module_details
    __import__(pkg_name)
  File "D:\Users\user\PycharmProjects\pythonProject\main.py", line 5, in <module>
    stream = yt.streams.first()
  File "D:\Users\user\PycharmProjects\pythonProject\venv\lib\site-packages\pytube\__main__.py", line 324, in streams
    return StreamQuery(self.fmt_streams)
  File "D:\Users\user\PycharmProjects\pythonProject\venv\lib\site-packages\pytube\__main__.py", line 229, in fmt_streams
    if "adaptive_fmts" in self.player_config_args:
  File "D:\Users\user\PycharmProjects\pythonProject\venv\lib\site-packages\pytube\__main__.py", line 203, in player_config_args
    self._player_config_args = self.vid_info
  File "D:\Users\user\PycharmProjects\pythonProject\venv\lib\site-packages\pytube\__main__.py", line 294, in vid_info
    return dict(parse_qsl(self.vid_info_raw))
  File "D:\Users\user\PycharmProjects\pythonProject\venv\lib\site-packages\pytube\__main__.py", line 124, in vid_info_raw
    self._vid_info_raw = request.get(self.vid_info_url)
  File "D:\Users\user\PycharmProjects\pythonProject\venv\lib\site-packages\pytube\request.py", line 55, in get
    response = _execute_request(url, headers=extra_headers, timeout=timeout)
  File "D:\Users\user\PycharmProjects\pythonProject\venv\lib\site-packages\pytube\request.py", line 39, in _execute_request
    return urlopen(request, timeout=timeout)  # nosec
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 531, in open
    response = meth(req, response)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 640, in http_response
    response = self.parent.error(
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 563, in error
    result = self._call_chain(*args)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 502, in _call_chain
    result = func(*args)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 755, in http_error_302
    return self.parent.open(new, timeout=req.timeout)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 531, in open
    response = meth(req, response)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 640, in http_response
    response = self.parent.error(
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 569, in error
    return self._call_chain(*args)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 502, in _call_chain
    result = func(*args)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 649, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found

这段代码以前对我有用,但现在不行了。我输入的链接有效,它是一个没有版权的 YouTube 视频链接。尝试重新启动 PC 或关闭所有浏览器窗口,但仍然无效。

编辑:我使用的是 pytube 版本 --> 10.7.0 ,我使用的链接在我的浏览器中 100% 有效。

0 个答案:

没有答案