【发布时间】:2018-06-08 22:15:44
【问题描述】:
我是 python 新手,一直在玩它,但在使用 PyQt5 时遇到了问题。有人可以向我解释一下这是什么意思:
ModuleNotFoundError: 没有名为“PyQt5.QtWebKit”的模块。
实际上,我想我明白这意味着什么,但我该如何解决呢?我在另一个论坛上找到了一个解决方案,但它只说 QtWebKit 需要在 PyQt5 中编译。我不明白这是什么意思,也不明白该怎么做。
我应该澄清一下,我已经安装了 PyQt5,并且我已经运行了一些示例脚本,只是带有一些小部件的简单窗口。我尝试使用有关使用 PyQt5 创建 Web 浏览器的教程中的代码时开始收到此错误。
我真的很喜欢 python 语言,我想将项目从 Access 转换为 python。在 Access 项目中,我有一些 WebBrowser 控件,我正在寻找一个 GUI 工具包,它允许我使用 python 做同样的事情。我认为 PyQt5 可以工作,但我不断收到 ModuleNotFoundError。
我使用的是 Windows 8.1,如果这有影响的话。
【问题讨论】:
-
使用 QtWebEngine,QtWebkit 已弃用。
-
为 PyQt5 编译 QtWebKit 可能是一项复杂的任务,因为您需要安装其他库,例如 SIP、Qt 和 WebKit,并且当您评论或了解如何操作时,您将浪费时间, 我推荐使用 QtWebEngine,它是 QtWebkit 的替代品,但有很多改进。在以下链接中,我展示了一个示例:gist.github.com/eyllanesc/07e60fa6d8b96b40cf1eaa270139d870
-
@eyllanesc,感谢您的帮助。我尝试了您发布的链接中的代码示例,效果很好。不过,我还有另一个问题。在我的原始脚本中,我将 QtWebKit 更改为 QtWebEngine 并且导入不再产生错误,但我开始收到不同的错误:未定义 QWebView。我在网上找到了一篇文章,显示了从 PyQt4 到 PyQt5 的一些变化(例如 QtWebKit vs QtWebEngine),但没有提到 QWebView。有什么想法吗?
-
没有你的代码我什么也不能告诉你。 QtWebKit 到 QtWebEngine 的翻译并非易事。 ;)
标签: python python-3.x pyqt pyqt5 qtwebkit