Я получаю ошибку HTTP 404, делая этот код для загрузки YouTube. Есть идеи, почему я почти уверен, что в ссылках нет ничего плохого, которые я загружал

#tk #pytube

Вопрос:

 import ssl
ssl._create_default_https_context = ssl._create_unverified_context
from tkinter import *
from pytube import *
##just a title
root =Tk()
root.title('Youtube Downloader')


##label at the top of 
ytdLabel= Label(root,text='Enter URL of the video',font=('jost',15))
ytdLabel.pack()

##entry bar
enterURL=Entry(root,width=30)
enterURL.pack()

##
def URLDownloader():
    myvid=(str(enterURL.get()))
    video=YouTube(myvid)
    video=video.streams.get_highest_resolution()
    video.download()
   
dwnloadBtn=Button(root,text='Download',command=URLDownloader)
dwnloadBtn.pack()

root.mainloop()
 

Исключение в обратном вызове Tkinter

 Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/tkinter/__init__.py", line 1892, in __call__
    return self.func(*args)
  File "/Users/jordanshodeinde/Desktop/Youtube downloader progression/youtube dowloader.py", line 25, in URLDownloader
    video=YouTube(myvid)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pytube/__main__.py", line 91, in __init__
    self.prefetch()
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pytube/__main__.py", line 181, in prefetch
    self.vid_info_raw = request.get(self.vid_info_url)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pytube/request.py", line 36, in get
    return _execute_request(url).read().decode("utf-8")
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pytube/request.py", line 24, in _execute_request
    return urlopen(request)  # nosec
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 214, in urlopen
    return opener.open(url, data, timeout)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 523, in open
    response = meth(req, response)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 632, in http_response
    response = self.parent.error(
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 555, in error
    result = self._call_chain(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 494, in _call_chain
    result = func(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 747, in http_error_302
    return self.parent.open(new, timeout=req.timeout)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 523, in open
    response = meth(req, response)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 632, in http_response
    response = self.parent.error(
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 561, in error
    return self._call_chain(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/urllib/request.py", line 494, in _call_chain
    result = func(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/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
 

Комментарии:

1. Что у тебя за вопрос по этому поводу? Как вы пытались решить свой вопрос?

2. мой вопрос в том, почему я получаю эту очень длинную ошибку и как ее устранить, чтобы загружать видео с YouTube

3. Пожалуйста, не помещайте истории в название . «HTTP 404 при попытке загрузки с YouTube» должно быть достаточно.

4. И да, я пытался решить эту проблему, но проблема в том, что я понятия не имею, в чем проблема, я получил еще одну ошибку, перед которой был сбой ssl-сертификата, и решил, что теперь я вернулся к полной потере

5. ладно, довольно сложно быть кратким, когда я понятия не имею, что происходит, хотя, лол

Ответ №1:

Проблема с этой ошибкой не имеет ничего общего Tkinter , это известная ошибка с пакетом pytube.

Не уверен, какую версию pytube вы используете, но эта проблема всегда решается после нового обновления pytube, а затем она возвращается к той же проблеме в будущем.

Но вы можете попробовать pip install pytube==10.9.2 , так как сейчас это последняя версия или python -m pip install --upgrade pytube . Надеюсь, это решит проблему, с которой вы сейчас сталкиваетесь.

Комментарии:

1. Спасибо за это, к сожалению, не было решено, так как мой pytube, похоже, не может обновиться после версии 9.6.4.Возможно, это как-то связано с чипом m1, поскольку я тоже пытался загрузить его через репозиторий GitHub.

2. Никаких проблем, чувак… pytube хотя для меня это прекрасно работает.

3. Однако вы были правы, проверили это в онлайн-среде разработки, используя 10.9.2. Большое спасибо! теперь у меня есть вторая проблема, которую нужно решить, лол.

4. Может быть, вам придется задать новый вопрос, тогда я думаю 🙂

5. Нет проблем, братан. 🙂