我最近使用Windows 32位安装程序将PyQt5从5.5.1升级到5.6.0:https://www.riverbankcomputing.com/software/pyqt/download5。我还将我的python从3.4升级到3.5。
当我使用最新版本运行旧代码(以前的代码)时,我得到一个例外:
from PyQt5.QtWebKitWidgets import *
ImportError: No module named 'PyQt5.QtWebKitWidgets'
我的python中的所有QT调用都是连续发生的(并且我知道我不应该导入*但是我认为这不是问题所在):
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtWebKitWidgets import *
所以QtCore,QtGui和QtWidgets导入都没问题。
此外,当我在源代码中搜索QtWebKitWidgets时,会出现几个对此模块的引用。
最后我的python路径如下:
C:\PYTHON35;C:\PYTHON35\DLLs;C:\PYTHON35\LIB;C:\PYTHON35\LIB\LIB-TK;
和环境路径:
C:\Python35\Lib\site-packages\PyQt5;C:\Python35;C:\Python35\Lib;C:\Python35\Lib\site-packages;C:\Python35\Scripts ....
答案 0 :(得分:19)
QtWebKit
在Qt 5.5和removed in 5.6上游被弃用。
您可能想切换到PyQt5.QtWebEngineWidgets:
这取代了QtWebKit模块并提供了更好和最新的 支持HTML,CSS和JavaScript功能
答案 1 :(得分:3)
在PyQt5 “QtWebKitWidgets”不再可用。相反,它被替换为“QtWebEngineWidgets”。因此您必须在代码中进行此更改。
有关详细信息:http://doc.qt.io/qt-5/qtwebenginewidgets-qtwebkitportingguide.html
答案 2 :(得分:3)
如果您真的要使用PyQt5.QtWebKitWidgets
,则可以从命令行运行它:
pip install PyQtWebKit
让它做自己想做的事。
答案 3 :(得分:2)
在PyQt5中,“ QtWebKitWidgets” 已被弃用。我只需替换此行
from PyQt5.*QtWebKitWidgets* import *QWebView*, *QWebPage*
from PyQt5.*QtWebKit* import *QWebSettings*
使用以下代码:
from PyQt5.QtWebEngineWidgets import QWebEngineView as QWebView,QWebEnginePage as QWebPage
from PyQt5.QtWebEngineWidgets import QWebEngineSettings as QWebSettings
答案 4 :(得分:2)
我只是在回答,以防像我这样的人遇到这个问题: 我正在尝试运行qutebrowser,并且它有相同的错误,答案很简单,程序包已更改。 您有两种解决方案:
1)
pip install PyQtWebEngine
2)
pip install PyQt5==5.11.3
希望这可以解决以后出现的任何问题