小言_互联网的博客

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

386人阅读  评论(0)

年关将至,大家对疫情的关注度也愈发提升,本次使用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


  
  1. # -*- coding: utf- 8 -*-
  2. from PyQt5 import QtCore, QtGui, QtWidgets
  3. class  Ui_MainWindow(object):
  4.     def  setupUi(self, MainWindow):
  5.         MainWindow. setObjectName( "MainWindow")
  6.         MainWindow. resize( 800600)
  7.         self.centralwidget = QtWidgets. QWidget(MainWindow)
  8.         self.centralwidget. setObjectName( "centralwidget")
  9.         self.verticalLayout_3 = QtWidgets. QVBoxLayout(self.centralwidget)
  10.         self.verticalLayout_3. setObjectName( "verticalLayout_3")
  11.         self.verticalLayout_2 = QtWidgets. QVBoxLayout()
  12.         self.verticalLayout_2. setObjectName( "verticalLayout_2")
  13.         self.horizontalLayout = QtWidgets. QHBoxLayout()
  14.         self.horizontalLayout. setContentsMargins(- 110, - 110)
  15.         self.horizontalLayout. setObjectName( "horizontalLayout")
  16.         spacerItem = QtWidgets. QSpacerItem( 4020, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
  17.         self.horizontalLayout. addItem(spacerItem)
  18.         self.label = QtWidgets. QLabel(self.centralwidget)
  19.         self.label. setObjectName( "label")
  20.         self.horizontalLayout. addWidget(self.label)
  21.         self.comboBox = QtWidgets. QComboBox(self.centralwidget)
  22.         self.comboBox. setEnabled(False)
  23.         self.comboBox. setObjectName( "comboBox")
  24.         self.comboBox. addItem( "")
  25.         self.comboBox. addItem( "")
  26.         self.comboBox. addItem( "")
  27.         self.comboBox. addItem( "")
  28.         self.comboBox. addItem( "")
  29.         self.comboBox. addItem( "")
  30.         self.comboBox. addItem( "")
  31.         self.comboBox. addItem( "")
  32.         self.comboBox. addItem( "")
  33.         self.comboBox. addItem( "")
  34.         self.comboBox. addItem( "")
  35.         self.comboBox. addItem( "")
  36.         self.horizontalLayout. addWidget(self.comboBox)
  37.         spacerItem1 = QtWidgets. QSpacerItem( 4020, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
  38.         self.horizontalLayout. addItem(spacerItem1)
  39.         self.verticalLayout_2. addLayout(self.horizontalLayout)
  40.         self.horizontalLayout_2 = QtWidgets. QHBoxLayout()
  41.         self.horizontalLayout_2. setObjectName( "horizontalLayout_2")
  42.         self.frame = QtWidgets. QFrame(self.centralwidget)
  43.         self.frame. setFrameShape(QtWidgets.QFrame.StyledPanel)
  44.         self.frame. setFrameShadow(QtWidgets.QFrame.Raised)
  45.         self.frame. setObjectName( "frame")
  46.         self.horizontalLayout_2. addWidget(self.frame)
  47.         self.verticalLayout_2. addLayout(self.horizontalLayout_2)
  48.         self.verticalLayout_2. setStretch( 01)
  49.         self.verticalLayout_2. setStretch( 120)
  50.         self.verticalLayout_3. addLayout(self.verticalLayout_2)
  51.         MainWindow. setCentralWidget(self.centralwidget)
  52.         self.menubar = QtWidgets. QMenuBar(MainWindow)
  53.         self.menubar. setGeometry(QtCore. QRect( 0080026))
  54.         self.menubar. setObjectName( "menubar")
  55.         MainWindow. setMenuBar(self.menubar)
  56.         self.statusBar = QtWidgets. QStatusBar(MainWindow)
  57.         self.statusBar. setObjectName( "statusBar")
  58.         MainWindow. setStatusBar(self.statusBar)
  59.         self. retranslateUi(MainWindow)
  60.         QtCore.QMetaObject. connectSlotsByName(MainWindow)
  61.     def  retranslateUi(self, MainWindow):
  62.         _translate = QtCore.QCoreApplication.translate
  63.         MainWindow. setWindowTitle( _translate( "MainWindow""疫情情况快速查询"))
  64.         self.label. setText( _translate( "MainWindow""引擎选择:"))
  65.         self.comboBox. setItemText( 0_translate( "MainWindow""百度"))
  66.         self.comboBox. setItemText( 1_translate( "MainWindow""新浪"))
  67.         self.comboBox. setItemText( 2_translate( "MainWindow""网易"))
  68.         self.comboBox. setItemText( 3_translate( "MainWindow""腾讯"))
  69.         self.comboBox. setItemText( 4_translate( "MainWindow""搜狗"))
  70.         self.comboBox. setItemText( 5_translate( "MainWindow""凤凰"))
  71.         self.comboBox. setItemText( 6_translate( "MainWindow""猕尔"))
  72.         self.comboBox. setItemText( 7_translate( "MainWindow""360"))
  73.         self.comboBox. setItemText( 8_translate( "MainWindow""丁香园"))
  74.         self.comboBox. setItemText( 9_translate( "MainWindow""华尔街"))
  75.         self.comboBox. setItemText( 10_translate( "MainWindow""今日头条"))
  76.         self.comboBox. setItemText( 11_translate( "MainWindow""美国中文网"))

四.总结

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


转载:https://blog.csdn.net/weixin_56659172/article/details/128075943
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场