PyQt5在一个窗口中创建一个浏览器控件
如果报错 No module named ‘PyQt5.QtWebEngineWidgets’,在库中添加 PyQtWebEngine 这个库。(命令:pip install PyQtWebEngine)
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWebEngineWidgets import * # 导入浏览器的包
import sys
from PyQt5.QtWidgets import *
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
# MainWindow.setObjectName("MainWindow") # 设置对象名称
MainWindow.resize(800, 600) # 主窗口大小
self.centralwidget = QtWidgets.QWidget(MainWindow)
# self.centralwidget.setObjectName("centralwidget")
# todo 这一段是浏览器控件代码
# from PyQt5.QtWebEngineWidgets import * # 导入浏览器的包
self.webView = QWebEngineView(self.centralwidget)
# (左边离窗口距离, 右边离窗口距离, 浏览器的宽度, 浏览器的高度)
self.webView.setGeometry(QtCore.QRect(50, 50, 700, 500)) # (50 左边, 50 右边, 700 宽, 500 高)
# 设置浏览器的默认地址
self.webView.setUrl(QtCore.QUrl("https://www.baidu.com/"))
# self.webView.setObjectName("浏览器")
MainWindow.setCentralWidget(self.centralwidget)
if __name__ == "__main__":
# 创建QApplication类的实例
app = QApplication(sys.argv)
# 创建一个窗口
mainWindow = QMainWindow()
# 调用Ui_MainWindow类
ui = Ui_MainWindow()
# 将Ui_MainWindow下的setupUi方法显示在mainWindow上
ui.setupUi(mainWindow)
# 显示窗口
mainWindow.show()
# 进入程序的主循环,并通过exit函数确保主循环安全结束
sys.exit(app.exec_())
方式二、转载
博主给的Python及环境版本

完整项目
链接: https://pan.baidu.com/s/13s-MQKNPOurS1PBLMHZkoQ
提取码: 1q25
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtWebEngineWidgets import *
import sys
class WebView(QWebEngineView):
def __init__(self, parent):
super().__init__(parent)
# 调用点击的链接,如果没有返回的链接,浏览器不会跳转
def createWindow(self, webWindowType):
return main_demo.browser
class MainDemo(QMainWindow):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.setWindowTitle('MWB浏览器')
self.setWindowIcon(QIcon('icons/penguin.png'))
self.resize(800, 500)
self.show()
# 添加URL地址栏
self.urlbar = QLineEdit()

本文介绍了如何在PyQt5中创建一个包含浏览器控件的窗口,并提供了解决'PyQt5.QtWebEngineWidgets'缺失的解决方案,以及如何添加地址栏、标签页管理和高级功能,如视频播放支持和多窗口操作。
最低0.47元/天 解锁文章
354





