Python写了个疫情信息快速查看工具

news/2024/11/16 21:43:12/

年关将至,大家对疫情的关注度也愈发提升,本次使用PyQt5撰写100行代码写一个疫情信息快速查看工具。

一.准备工作

1.PyQt5

PyQt 是一个用于创建GUI应用程序的跨平台的工具包,它将Python编程语言和Qt库 成功融合在一起。QT库目前是最强大的GUI库之一。PyQt可以运行在所有主流操作系统上,包括UNIX,Windows和Mac OS。

直接使用下面的命令安装即可:pip install PyQt5

2.PyQtWebEngine

Qt WebEngine模块提供了一个web浏览器, 在不使用本地浏览器的情况下, 它可以很容易地把Web内容嵌入到Qt应用程序中。Qt WebEngine为渲染HTML, XHTML和SVG文档, 使用CSS和JavaScript, 提供了C++类和QML类型。

直接使用下面的命令安装即可:pip install PyQtWebEngine

Qt WebEngine Widgets 模块:

二.预览

1.启动

启动以后主窗口会自动加载最新的疫情信息,默认是百度的引擎。

2.引擎切换

通过在分组框选择引擎,实现对引擎的切换。

三.主要代码

main_window.py

# -*- coding: utf-8 -*-from PyQt5 import QtCore, QtGui, QtWidgetsclass Ui_MainWindow(object):def setupUi(self, MainWindow):MainWindow.setObjectName("MainWindow")MainWindow.resize(800, 600)self.centralwidget = QtWidgets.QWidget(MainWindow)self.centralwidget.setObjectName("centralwidget")self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.centralwidget)self.verticalLayout_3.setObjectName("verticalLayout_3")self.verticalLayout_2 = QtWidgets.QVBoxLayout()self.verticalLayout_2.setObjectName("verticalLayout_2")self.horizontalLayout = QtWidgets.QHBoxLayout()self.horizontalLayout.setContentsMargins(-1, 10, -1, 10)self.horizontalLayout.setObjectName("horizontalLayout")spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)self.horizontalLayout.addItem(spacerItem)self.label = QtWidgets.QLabel(self.centralwidget)self.label.setObjectName("label")self.horizontalLayout.addWidget(self.label)self.comboBox = QtWidgets.QComboBox(self.centralwidget)self.comboBox.setEnabled(False)self.comboBox.setObjectName("comboBox")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.comboBox.addItem("")self.horizontalLayout.addWidget(self.comboBox)spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)self.horizontalLayout.addItem(spacerItem1)self.verticalLayout_2.addLayout(self.horizontalLayout)self.horizontalLayout_2 = QtWidgets.QHBoxLayout()self.horizontalLayout_2.setObjectName("horizontalLayout_2")self.frame = QtWidgets.QFrame(self.centralwidget)self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)self.frame.setFrameShadow(QtWidgets.QFrame.Raised)self.frame.setObjectName("frame")self.horizontalLayout_2.addWidget(self.frame)self.verticalLayout_2.addLayout(self.horizontalLayout_2)self.verticalLayout_2.setStretch(0, 1)self.verticalLayout_2.setStretch(1, 20)self.verticalLayout_3.addLayout(self.verticalLayout_2)MainWindow.setCentralWidget(self.centralwidget)self.menubar = QtWidgets.QMenuBar(MainWindow)self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 26))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.translateMainWindow.setWindowTitle(_translate("MainWindow", "疫情情况快速查询"))self.label.setText(_translate("MainWindow", "引擎选择:"))self.comboBox.setItemText(0, _translate("MainWindow", "百度"))self.comboBox.setItemText(1, _translate("MainWindow", "新浪"))self.comboBox.setItemText(2, _translate("MainWindow", "网易"))self.comboBox.setItemText(3, _translate("MainWindow", "腾讯"))self.comboBox.setItemText(4, _translate("MainWindow", "搜狗"))self.comboBox.setItemText(5, _translate("MainWindow", "凤凰"))self.comboBox.setItemText(6, _translate("MainWindow", "猕尔"))self.comboBox.setItemText(7, _translate("MainWindow", "360"))self.comboBox.setItemText(8, _translate("MainWindow", "丁香园"))self.comboBox.setItemText(9, _translate("MainWindow", "华尔街"))self.comboBox.setItemText(10, _translate("MainWindow", "今日头条"))self.comboBox.setItemText(11, _translate("MainWindow", "美国中文网"))

四.总结

本次使用PyQt5开发了一款疫情信息快速查看工具,实现了多个数据源的查看,代码量不大,功能相当于浏览器,只是限定了一些特定网址。


http://www.ppmy.cn/news/40.html

相关文章

HTML5期末考核大作业 基于HTML+CSS+JavaScript仿王者荣耀首页 游戏网站开发 游戏官网设计与实现

🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

Spark学习(6)-Spark SQL

1 快速入门 SparkSQL是Spark的一个模块, 用于处理海量结构化数据。 SparkSQL是非常成熟的 海量结构化数据处理框架. 学习SparkSQL主要在2个点: SparkSQL本身十分优秀, 支持SQL语言\性能强\可以自动优化\API简单\兼容HIVE等等。企业大面积在使用SparkSQL处理业务数据。 离线开…

http和dubbo接口调用主动设置超时时间

http接口超时方案 方案1:多个resttemplate,不同超时时间的使用不同的template,优点:简单,扩展起来复制粘贴,缺点:代码冗余,多个template占用内存不够优雅 方案2:单个res…

深度学习day01

Marchine leariing 机器学习就是自动找函式 告诉机器要找的函式用 Supervised Learning 函式的Loss ——评价函式的好坏 Reinforcement就是让机器自己下象棋,输赢自己尝试,没像监督学习那样有人为规定 给函式寻找范围: 函式寻找方法——…

基于单RGB相机的全新三维表示方法|NeurIPS 2022

随着深度学习的发展,基于单张RGB图像的人体三维重建取得了持续进展。 但基于现有的表示方法,如参数化模型、体素栅格、三角网格和隐式神经表示,难以构筑兼顾高质量结果和实时速度的系统。 针对上述问题,天津大学团队联合清华大学…

Spire.XLS for Java 12.11.8 Excel to PDF bug Fix

谷歌找破解版Spire.XLS for Java is a professional Java Excel API that enables developers to create, manage, manipulate, convert and print Excel worksheets without using Microsoft Office or Microsoft Excel. Spire.XLS for Java supports both for the old Excel …

《WEB前端框架开发技术》HTML5响应式旅游景区网站——榆林子州HTML+CSS+JavaScript

👨‍🎓学生HTML静态网页基础水平制作👩‍🎓,页面排版干净简洁。使用HTMLCSS页面布局设计,web大学生网页设计作业源码,这是一个不错的旅游网页制作,画面精明,排版整洁,内容…

C++基础知识

目录 C的基本使用 C数据的输入与输出 C使用命令行 具体案例 C生成随机数 关键字 标识符命名规则 数据类型 整形 实型(浮点型) 浮点型变量分为2种 表示小数的两种方式 案例演示 字符型 案例演示 字符串类型 两种风格 两种风格字符串之间…