返回顶部
首页 > 资讯 > 后端开发 > Python >使用pyQT5显示网页的实现步骤
  • 287
分享到

使用pyQT5显示网页的实现步骤

2024-04-02 19:04:59 287人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录1、PyQtWEBEngine安装库2、设计窗体3、生成代码4、添加代码开发环境配置请参考博文: 【python】在PyCharm中使用pyQT5进行GUI开发的基本流程 1、

开发环境配置请参考博文:

python】在PyCharm中使用pyQT5进行GUI开发的基本流程

1、PyQTWebEngine安装库

加载网页需要使用PyQTWebEngine库,可以使用import PyQt5.QtWebEngineWidgets测试是否有这个库,如果没有,需要先安装


pip install PyQtWebEngine -i https://pypi.douban.com/simple/

2、设计窗体

在QT Designer里面,没有WebEngine窗体,只能在程序中创建,先将其他的部分放好。
这儿放置了一个LineEdit,用于输入网址,一个按钮

在这里插入图片描述

3、生成代码

使用pyUIC生成代码,生成的代码为:


# -*- coding: utf-8 -*-

# FORM implementation generated from reading ui file 'web.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again.  Do not edit this file unless you know what you are doing.


from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1200, 700)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit.setGeometry(QtCore.QRect(20, 10, 631, 31))
        self.lineEdit.setObjectName("lineEdit")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(690, 10, 90, 30))
        self.pushButton.setObjectName("pushButton")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1200, 23))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.lineEdit.setText(_translate("MainWindow", "Http://www.baidu.com"))
        self.pushButton.setText(_translate("MainWindow", "打开"))

4、添加代码

引入库文件


from PyQt5 import QtCore, QtGui, QtWidgets,QtWebEngineWidgets

1、添加WebEngine窗体


        ## 创建web窗体
        self.qwebengine = QtWebEngineWidgets.QWebEngineView(MainWindow)
        self.qwebengine.setGeometry(20, 50, 1600, 600)

2、创建按钮功能


        ## 创建连接
        self.pushButton.clicked.connect(self.open_url)

3、编写按钮函数


    def open_url(self):
        url=self.lineEdit.text()
        self.qwebengine.load(QtCore.QUrl(url))

4、添加启动程序


import sys

if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()  # 创建窗体对象
    ui = Ui_MainWindow()  # 创建PyQt设计的窗体对象
    ui.setupUi(MainWindow)  # 调用窗体的方法对对象进行初始化设置
    MainWindow.show()  # 显示窗体
    sys.exit(app.exec_())  # 程序关闭时退出进程

5、完整代码


# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'web.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again.  Do not edit this file unless you know what you are doing.


from PyQt5 import QtCore, QtGui, QtWidgets,QtWebEngineWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("打开网页")
        MainWindow.resize(1640, 700)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit.setGeometry(QtCore.QRect(20, 10, 630, 30))
        self.lineEdit.setObjectName("lineEdit")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(690, 10, 90, 30))
        self.pushButton.setObjectName("pushButton")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1200, 23))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

        ## 创建web窗体
        self.qwebengine = QtWebEngineWidgets.QWebEngineView(MainWindow)
        self.qwebengine.setGeometry(20, 50, 1600, 600)

        ## 创建连接
        self.pushButton.clicked.connect(self.open_url)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "打开网页"))
        self.lineEdit.setText(_translate("MainWindow", "http://www.baidu.com"))
        self.pushButton.setText(_translate("MainWindow", "打开"))


    def open_url(self):
        url=self.lineEdit.text()
        self.qwebengine.load(QtCore.QUrl(url))

import sys

if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()  # 创建窗体对象
    ui = Ui_MainWindow()  # 创建PyQt设计的窗体对象
    ui.setupUi(MainWindow)  # 调用窗体的方法对对象进行初始化设置
    MainWindow.show()  # 显示窗体
    sys.exit(app.exec_())  # 程序关闭时退出进程

6、运行

在这里插入图片描述

到此这篇关于使用pyQT5显示网页的实现步骤的文章就介绍到这了,更多相关pyQT5显示网页内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 使用pyQT5显示网页的实现步骤

本文链接: https://lsjlt.com/news/154636.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 使用pyQT5显示网页的实现步骤
    目录1、PyQTWebEngine安装库2、设计窗体3、生成代码4、添加代码开发环境配置请参考博文: 【python】在PyCharm中使用pyQT5进行GUI开发的基本流程 1、...
    99+
    2024-04-02
  • 如何使用CSS制作网页加载进度条的实现步骤
    如何使用CSS制作网页加载进度条的实现步骤在现代网页设计中,加载速度对于用户体验至关重要。为了提升用户体验,可以使用CSS制作网页加载进度条,让用户清晰地了解网页加载进度。本文将介绍使用CSS制作网页加载进度条的实现步骤,并提供具体的代码示...
    99+
    2023-10-26
    进度条 CSS 网页
  • 使用python+Flask实现日志在web网页实时更新显示
    目录一、日志输出到文件二、生成日志和读取日志三、Flask创建一个web服务四、启动服务总结 一、日志输出到文件 使用模块:logging 可以生成自定义等级日志,可以输出...
    99+
    2024-04-02
  • 使用Webpack构建多页面程序的实现步骤
    使用webpack搭建单页面程序十分常见,但在实际开发中我们可能还会有开发多页面程序的需求,因此我研究了一下如何使用webpack搭建多页面程序。 原理 将每个页面所在的文件夹都看...
    99+
    2024-04-02
  • 使用Jquery+Ajax+Json实现分页显示的示例分析
    这篇文章将为大家详细讲解有关使用Jquery+Ajax+Json实现分页显示的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。先给大家展示下运行效果图: ...
    99+
    2024-04-02
  • 微信小程序使用webview打开pdf文档以及显示网页内容的方法步骤
    目录一、微信小程序根据接口返回的pdf链接,在小程序内部浏览pdf内容二、根据网页链接,把网页内容在微信小程序内部显示总结一、微信小程序根据接口返回的pdf链接,在小程序内部浏览pd...
    99+
    2024-04-02
  • MATLAB 全景图切割及盒图显示的实现步骤
    目录part1 全景图切割1.1 边缘剔除1.2 图像裁剪1.3 完整代码1.4 其他几组切割结果part2 盒图展示2.1 曲面绘制2.2 视角调整2.3 完整代码part1 全景...
    99+
    2024-04-02
  • PyQt5+pycharm开发环境搭建的实现步骤(图文)
    目录什么是pyQt5安装pyqt5环境:一、 pycharm环境准备二、 编写界面并运行三、 给生成的按钮实现弹窗功能什么是pyQt5 首先我们来说说什么是pyQt5。 搞过GUI界...
    99+
    2024-04-02
  • 如何使用python+Flask实现日志在web网页实时更新显示
    一、日志输出到文件使用模块:logging可以生成自定义等级日志,可以输出日志到指定路径日志等级:debug(调试日志) < info(重要信息日志) < warning(警告日志) < error(异常日志) < ...
    99+
    2023-05-17
    Python web Flask
  • PyQt5实现界面(页面)跳转的示例代码
    网上关于PyQt5的教程很少,特别是界面跳转这一块儿,自己研究了半天,下来和大家分享一下 一、首先是主界面 # -*- coding: utf-8 -*- # Form im...
    99+
    2024-04-02
  • PyQt5如何使用QMessageBox显示不同的对话框
    这篇“PyQt5如何使用QMessageBox显示不同的对话框”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“PyQt5如何使...
    99+
    2023-07-05
  • 利用PyQt5模拟实现网页鼠标移动特效
    核心代码: from random import random from time import time from PyQt5.QtCore import QPropertyAni...
    99+
    2024-04-02
  • Vue3解析markdown并实现代码高亮显示的详细步骤
    目录具体实现步骤如下:一、安装依赖库二、在main.js文件中引入highlight.js及样式并创建一个自定义的全局指令三、在Vue组件中应用marked解析及实现代码高亮四、显示...
    99+
    2024-04-02
  • 使用CI框架向网页引入CSS样式的步骤
    CI框架引入CSS样式的步骤,需要具体代码示例 CI(CodeIgniter)框架是一种流行的PHP开发框架,被广泛用于构建高效的Web应用程序。在开发Web应用程序时,美观的用户界面是一个重要的考虑因素。使用CSS样式可以达到...
    99+
    2024-01-16
    步骤 CI框架 CSS样式
  • 使用Docker部署MySQL的实现步骤
    目录1、拉取mysql2、启动容器镜像3、登录容器4、登录mysql在 【Docker】 下部署,使用命令行进行拉取。 1、拉取mysql 最新版本mysql: docker pul...
    99+
    2022-11-13
    Docker部署MySQL Docker MySQL部署
  • react+typescript中使用echarts的实现步骤
    安装echarts npm install echarts --save 按需加载Echarts demo echarts.init() API文档 import * as echa...
    99+
    2022-11-13
    react typescript使用echarts react typescript echarts
  • PyQt5按下按键选择文件夹并显示的实现
    问题: 使用PyQt5开发桌面程序,实现功能为:按下按键,打开文件夹,选择文件夹,并将路径显示出来。 解决方法: 一、主要函数(直接能运行的代码见二) 1、选择文件夹并显示 ...
    99+
    2024-04-02
  • 怎么用javabean来实现MySQL的分页显示
    这篇文章主要讲解了“怎么用javabean来实现MySQL的分页显示”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用javabean来实现MySQL的分...
    99+
    2024-04-02
  • PHP + MySQL实现数据分页显示的示例
    这篇文章主要介绍PHP + MySQL实现数据分页显示的示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!php有什么特点1、执行速度快。2、具有很好的开放性和可扩展性。3、PHP支...
    99+
    2024-04-02
  • 使用Django与AJAX怎么实现一个网页动态数据显示功能
    今天就跟大家聊聊有关使用Django与AJAX怎么实现一个网页动态数据显示功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。环境windows10pycharm2017.3.3 pr...
    99+
    2023-06-06
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作