使用PySide2 时遇到一个问题: ImportError: cannot import name QWebView
网上搜索了下有如下发现:
Qt5有两种不同的Web工具包:基于WebKit的QtWebKit和基于Chromium的较新的QtWebEngine。
QWebPage和QWebView是QtWebKit的一部分,而QWebEngineView和QWebEnginePage是QtWebEngine的一部分。
正确使用方法如下:
使用PySide2
- WebEngine
from PySide2.QtWebEngineWidgets import QWebEnginePage
from PySide2.QtWebEngineWidgets import QWebEngineView
使用PyQt5
在 PyQt 5.6(+) 版本中, Qt 移除了对 QtWebKitWidgets 模块的支持, 新增 QtWebEngineWidgets 作为代替, 以提供更好的和最新的 HTML, CSS 以及 JavaScript 功能支持(基于Chromium)。
详情见:http://doc.qt.io/qt-5/whatsnew56.html
- WebEngine(PyQt >= 5.7.1)
from PyQt5.QtWebEngineWidgets import QWebEnginePage
from PyQt5.QtWebEngineWidgets import QWebEngineView
注:pip3 install PyQt5==5.6提示最早的版本为5.7.1,更早的版本未测试
- WebKit(前提是支持QtWebKit)
from PyQt5.QtWebKitWidgets import QWebPage
from PyQt5.QtWebKitWidgets import QWebView