

原因:在 PyQt 5.6(+) 版本中, 新增 QtWebEngineWidgets 代替QtWebKitWidgets。
简易阅览器
import sys,os
os.chdir(os.path.dirname(os.path.abspath(__file__)))
from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtWebEngineWidgets import *
class MainWindow(QMainWindow):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.setWindowTitle('My Browser')
self.setWindowIcon(QIcon('icons/favicon.ico'))
self.resize(900, 600)
self.show()
url = 'https://www.baidu.com'
self.browser = QWebEngineView()
self.browser.load(QUrl(url))
self.setCentralWidget(self.browser)
if __name__=='__main__':
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())

解决方案安装PyQtWebEngine
如果安装完PyQt5还是无法运行,由其是Linux下,就安装这个PyQtWebEngine试试。如果冲突就把PyQt5卸载后在重新安装。
pip3 install PyQtWebEngine

扩展代码

pyqt5的QWebEngineView 使用模板2 (QTabWidget 改进版)


网友评论