【问题标题】:AttributeError: 'builtin_function_or_method' object has no attribute 'get'AttributeError:“builtin_function_or_method”对象没有属性“get”
【发布时间】:2020-11-27 15:30:52
【问题描述】:

当我尝试运行程序并单击“下载”时,我总是会下载 youtube 视频:

    AttributeError: 'builtin_function_or_method' object has no attribute 'get'

但我不知道为什么,这是我的完整代码,以防它有用:

import tkinter as tk
import pytube
from tkinter import *
from pytube import YouTube

def handle_focus_in(_):
    e.delete(0, tk.END)
    e.config(fg='black')

def handle_focus_out(_):
    e.delete(0, tk.END)
    e.config(fg='grey')
    e.insert(0, "Input Youtube URL")

def handle_enter(txt):
    print(e.get())
    handle_focus_out('dummy')

def click():
    inp = input.get()
    yt = YouTube(inp)
    print(yt.streams.all())
    stream = yt.streams.first()
    stream.download()

root = tk.Tk()

b1 = Button(root, text="Download", fg="red", command=click)
b1.pack(side=BOTTOM)

e = tk.Entry(root, bg='white', width=30, fg='grey')
e.pack(side=TOP)

e.insert(0, "Input Youtube URL")

e.bind("<FocusIn>", handle_focus_in)
e.bind("<FocusOut>", handle_focus_out)
e.bind("<Return>", handle_enter)

root.title("Ayomide's Youtube Downloader")
root.configure(background="black")
root.mainloop()

【问题讨论】:

  • 我认为问题出在inp = input.get()这一行。加入input 是什么意思?你还没有声明。所以它使用了你没想到的python中的input。顺便说一句,您最好为变量使用其他名称,以免出现难以理解的错误。
  • 我不确定,inp = input.get() 是什么意思,但实际上是错误的,因为input.get() 你指的是python 内置的input() 函数,但我认为它应该是@ 987654329@只是一个猜测。

标签: python tkinter youtube attributeerror pytube


【解决方案1】:

您收到此错误是因为 input 是 Python 的内置函数。让我们看看:https://www.w3schools.com/python/ref_func_input.asp

此外,您没有定义 input 变量。

我检查了你的实现,我猜你想从 GUI 获取 YouTube 链接并将其传递给 YouTube() 类。

您应该将inp = input.get() 更改为inp = e.get(),在这种情况下,inp 变量将包含来自 GUI 的 YouTube URL。

我用以下方法测试过:

def click():
    inp = e.get()
    print("YouTube({})".format(inp))

界面:

控制台输出(如果我点击Download按钮):

>>> python3 test.py 
YouTube(https://www.youtube.com/watch?v=7tN1EoUumHU)

【讨论】:

    猜你喜欢
    • 2018-11-29
    • 2018-03-27
    • 2016-01-31
    • 2014-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-23
    相关资源
    最近更新 更多