2017-04-05 57 views
0

我正在尝试使用Tkinter。运行我的程序时,应该出现一个弹出按钮。按下按钮后,代码被执行并且网站被解析。解析本身工作正常,但与Tkinter它没有。此外,代码在按下按钮之前执行。如果有人能指出我犯的错误,我将非常感激。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() 
+0

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

回答

0

news()Button创建代码删除()。您不想在创建按钮时运行该功能。你想注册它以备将来使用。

1

command属性必须被赋予一个可调用的函数,而不是一个字符串。

例如:

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