如何在python 3.4.x中的tkinter文本小部件中显示渲染的html内容

时间:2016-05-07 03:51:51

标签: python-3.x tkinter

我想在python 3.4中的tkinter文本小部件中显示我的邮件。 它可以使用message.HTMLBody以HTML格式打印。如何在文本小部件中呈现它并显示内容

2 个答案:

答案 0 :(得分:2)

没有任何过去非常基本的HTML tkinter就不是为此而构建的。有tkhtml作为一个选项,但是任何超过基本HTML的内容都要在其他地方查找。 Tk可以做很多很棒的事情,但嵌入网页/内容实际上不是其中之一。

如果您只想从邮件中获取文本/一些基本图像/格式,那么您可以抓取数据,然后通过标准tk小部件进行渲染和格式化。

我真的不喜欢推荐其他软件包/选项,因为它往往是高度自以为是,但请查看PyQt。具体来说,就是QtWebkit。

答案 1 :(得分:2)

我设法使用tkhtml呈现简单的html标记。

使用pip3 install tkinterhtml安装,然后使用package example

from tkinterhtml import HtmlFrame

frame = HtmlFrame(root, horizontal_scrollbar="auto")

frame.set_content("<html></html>")

如果您想直接呈现网页,可以执行此操作以请求并呈现它:

frame.set_content(urllib.request.urlopen("http://thonny.cs.ut.ee").read().decode())

希望有所帮助:)