A C*_*der 8 python tk-toolkit tkinter html-rendering
我需要一种简单的方法来呈现使用Requests(python-requests.org)检索的HTML页面.我在Windows上使用Python 3.2.
我使用的是tkinter,我发现了一个名为TkHtml的Tk小部件.它在http://tkhtml.tcl.tk/中描述,DLL可从http://www.hwaci.com/sw/tkhtml/下载.我在http://tix.sourceforge.net/Tixapps/src/Python/TkHtml.py找到了一个python包装器.
我不知道如何让TkHtml在python中运行.是否有一些处理第三方Tk小部件的标准方法?
我把tkhtml.dll放在Python32\DLLs中(不知道这是不对的)并将TkHtml.py放在Python32\Lib\site-packages中.我继续修复TkHtml.py中的导入以使用Python 3(将tkFileDialog更改为tkinter.filedialog,将Tkinter更改为tkinter).
当我做:
import TkHtml
app=TkHtml.TestApp()
Run Code Online (Sandbox Code Playgroud)
我收到错误:
...
File "C:\Program Files\Python32\lib\site-packages\TkHtml.py", line 45, in __init__
master.tk.call("package", "require", "tkhtml")
_tkinter.TclError: can't find package tkhtml
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
小智 5
找到你的 Python tcl 目录,例如。C:\Python32\tcl 。这就是 tcl/tk 扩展的所在。
在其中创建一个名为 Tkhtml 的新文件夹。
在这个文件夹中放入 (1) 你的 .dll 文件,(2) 一个名为 pkgIndex.tcl 的文本文件
pkgIndex.tcl 包含这样一行:
package ifneeded Tkhtml 0.0 [list load [file join $dir tkhtml.dll]]
Run Code Online (Sandbox Code Playgroud)
如果您可以在 python 提示符下执行此操作,
>>> import Tkinter #tkinter
>>> root = Tkinter.Tk()
>>> root.tk.eval('package require Tkhtml')
'0.0'
Run Code Online (Sandbox Code Playgroud)
...然后包可用。该字符串'0.0'表示版本号。
| 归档时间: |
|
| 查看次数: |
5958 次 |
| 最近记录: |