Python多线程扫描主机 一 UI实现和展示

前言

通过Python可以通过尝试连接TCP来扫描主机,为此写了个小软件,用来扫描主机。

系列

Python多线程扫描主机 一 UI实现和展示_shaynerain的博客-CSDN博客

Python多线程扫描主机 二 范围IP&端口的扫描-CSDN博客

Python多线程扫描主机 三 范围IP&端口的扫描-CSDN博客

目标

用Python实现一个主机扫描的工具,要求如下:

  • 要求有UI
  • 能多线程扫描
  • 指定IP扫描
  • 范围IP扫描
  • 指定端口扫描
  • 范围端口扫描

UI实现

选择使用Pyside6作为UI库,和Pyqt用法基本一样,好处是LGPL协议的,真到了上线的时候使用起来避免了一些麻烦。

首先需要安装,终端中使用pip直接安装,如果pip访问非常慢,可以设置下pip代理

pip install pyside6

打开UI设计软件designer,在终端中直接输入

designer

可看到弹出的窗口

创建新MainWindow进行设计,具体可尝试拖拉各种控件实现如下UI

Python运行UI

首先ui文件转换成python脚本

在.ui文件下打开终端,输入如下指令,其中名字根据需要替换;此时便会得到一个main_ui.py的文件

pyside6-uic -o main_ui.py main.ui

 引用main_ui.py、和pyside6,完成以下代码实现UI显示

# UI相关模块
from PySide6 import QtCore
from PySide6 import QtWidgets
from PySide6 import QtGui
# 导入生成的ui文件
import main_ui
import sys


class MainUI(QtWidgets.QMainWindow, main_ui.Ui_MainWindow):
    def __init__(self, parent=None):
        """
        类初始化
        :param parent:
        """
        # 初始化
        super(MainUI, self).__init__()
        # 设置ui
        self.setupUi(self)


 # 单个执行入口
if __name__ == '__main__':
    # 创建app
    app = QtWidgets.QApplication()
    # 设置整体样式
    app.setStyle("Fusion")
    # 获取窗口
    window = MainUI()
    # 显示出来
    window.show()
    # 等待退出
    sys.exit(app.exec())

from: Python多线程扫描主机 一 UI实现和展示_shaynerain的博客-CSDN博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值