Python Tkinter不运行该函数

Python Tkinter不运行该函数,python,tkinter,beautifulsoup,Python,Tkinter,Beautifulsoup,我想利用特金特。运行我的程序时,应该会出现一个带有按钮的弹出窗口。按下按钮后,执行代码并解析站点。解析本身工作正常,但使用Tkinter则不行。此外,该代码在按下按钮之前执行。如果有人能指出我犯的错误,我将不胜感激 from lxml import html import requests from bs4 import BeautifulSoup def news(): page = requests.get('http://www.globo.com/index.html')

我想利用特金特。运行我的程序时,应该会出现一个带有按钮的弹出窗口。按下按钮后,执行代码并解析站点。解析本身工作正常,但使用Tkinter则不行。此外,该代码在按下按钮之前执行。如果有人能指出我犯的错误,我将不胜感激

from lxml import html
import requests
from bs4 import BeautifulSoup

def news():
    page = requests.get('http://www.globo.com/index.html')

    soup = BeautifulSoup(page.content, 'html.parser')
    bbb = soup.find_all('p', class_='hui-premium__title')
    for item in bbb:
        ccc = item.get_text('p')
        print(ccc)


from tkinter import *
master = Tk()

b = Button(master, text="latest news", command='news()')
b.pack()

mainloop()

按钮中的
新闻()
中删除
()
。您不希望在创建按钮时运行该函数。您想注册它以备将来使用。

必须为
命令
属性指定一个可调用函数,而不是字符串

例如:

b = Button(..., command=news)

不要使用HTML手动格式化代码。只需粘贴它,选择它,然后单击
{}
按钮或按Ctrl+K。这会将它缩进4个空格,告诉Stack Overflow将其格式化为代码。