所以我的应用程序需要能够打开其中的单个网页(并且它必须来自互联网并且未保存),特别是我想使用 Tkinter GUI 工具包,因为它是我最熟悉的工具包。最重要的是,我希望能够在窗口中生成事件(例如单击鼠标),但无需实际使用鼠标。有什么好的方法可以解决这个问题?
编辑:我想澄清一下这一点,我需要一种方法来加载网页,甚至可能将特定的java小程序加载到tkinter小部件或窗口中。或者如果不是的话,也许还有另一种方法可以做到这一点,我可以在不使用键盘鼠标的情况下生成鼠标和键盘事件。
如果您希望在 GUI 中打开它,请使用布莱恩的建议,如果您只想打开网页,您可以使用:
import webbrowser
webbrowser.open("page.html")
Tkinter 没有可以渲染网页的小部件。
所以我找到了这个名为 pywebview 的模块
pip install pywebview
示例代码:-
import webview
webview.create_window('duckduckgo', 'https://www.duckduckgo.com')
webview.start() #this will open the webpage in a new window
您应该使用
pywebview
,这非常简单,只需编写三行代码。
我使用了它,但就我而言,它并不是在所有地方都有效。评论并让我知道它是否适合您。
适用于任何地方的最佳选择是
PyQt
的 QtWebview
模块。您可能会遇到一个问题,那就是重命名窗口,所以这里是解决方案
web.setWindowTitle(title)
您可以按原样使用所有功能,只需将
window
或 self
替换为 web
,就像上面的代码一样。
将 tkinter 导入为 tk 导入网页浏览器
def open_google(): webbrowser.open('https://www.google.com')
root = tk.Tk() root.title("Открытие сайта через Tkinter")
button = tk.Button(root, text='Открыть Google', command=open_google) 按钮.pack()
root.mainloop()