导入错误:无法导入名称“quote”。

7

我学习了 Python 的基础知识,所以尝试了下面的代码

from pytube import YouTube

Save_path="E:\python\youtube downloader"

link="https://www.youtube.com/watch?v=xWOoBJUqlbI"

try:
    yt=YouTube(link)

except:
    print("Connection error!")

    
mp4file=yt.filter('mp4')

yt.set_filename("ashshak")

d_file=yt.get(mp4files[-1].extention,mp4files[-1].resolution)

try:
    d_file.download(Save_path)

except:
    print("Error in downlaod")
    print("Download failed")

当我尝试运行这段代码或GUI接口代码时,编译器会显示以下错误。但是我已经安装了“pip install pytube”库。
Traceback (most recent call last):
  File "E:\python\youtube downloader\practiceyoutube.py", line 1, in <module>
    from pytube import YouTube
  File "C:\Users\PC\AppData\Local\Programs\Python\Python36\lib\site-packages\pytube\__init__.py", line 16, in <module>
    from pytube.streams import Stream
  File "C:\Users\PC\AppData\Local\Programs\Python\Python36\lib\site-packages\pytube\streams.py", line 17, in <module>
    from pytube import extract
  File "C:\Users\PC\AppData\Local\Programs\Python\Python36\lib\site-packages\pytube\extract.py", line 7, in <module>
    from pytube.compat import quote
ImportError: cannot import name 'quote'

我在这里犯了什么问题?我已经完成了所有基本的Python学习。所以我希望能够开始一个新的Python项目。请问有人可以帮助我吗?

这是我使用的GUI代码,但在这里出现了同样的问题。

import tkinter as tk


from pytube import YouTube
def downloadVid():
    global E1
    string =E1.get()
    yt = YouTube(str(string))
    videos = yt.get_videos()
    s=1
    for v in videos:
        print(str(s) + '.' + str(v))
        s +=1
    n=int(input("Enter your choice"))
    vid=videos[n-1]
    destination=str(input("Enter your destination"))
    vid.download(destination)
    print(yt.filename+"\n Ha been downloaded")
root=tk.Tk()

w=tk.Label(root,text="Youtube Downloader")
w.pack()


E1=tk.Entry(root,bd=5)
E1.pack(side=tk.TOP)


button=tk.Button(root,text="Download",fg="red",command=downloadVid   )
button.pack(side=tk.BOTTOM)

root.mainloop()
3个回答

7

3

我收到了完全相同的错误信息。

我不知道足够的知识来了解为什么这样可以解决问题,但是我运行了

pip install pytube3

然后它突然起作用了。


1

我刚遇到了同样的问题,为此苦恼了几个小时,按照上述方法解决了,但需要特别说明一下

pip uninstall pytube

pip install pytube3

在代码中

import pytube 

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接