千家信息网

Python怎么实现查询剪贴板自动匹配信息

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本文小编为大家详细介绍"Python怎么实现查询剪贴板自动匹配信息",内容详细,步骤清晰,细节处理妥当,希望这篇"Python怎么实现查询剪贴板自动匹配信息"文章能帮助大家解决疑惑,下面跟着小编的思路
千家信息网最后更新 2026年11月01日Python怎么实现查询剪贴板自动匹配信息

本文小编为大家详细介绍"Python怎么实现查询剪贴板自动匹配信息",内容详细,步骤清晰,细节处理妥当,希望这篇"Python怎么实现查询剪贴板自动匹配信息"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

不想每次都要去查execl,想更方便点,更快一点。

通俗点思路:点击exe,Python 自动监控剪贴板的内容,然后正则取出IP,接着根据IP对比业务文档,获取相应的信息,然后把查询出来的内容,弹出提示,把查询出的内容写入剪贴板。

"""功能作用:对比剪贴板类容""" import win32clipboard as wimport win32conimport xlrdfrom tkinter import messageboximport win32api, win32conimport pyperclipimport reimport sysimport os # print(__file__) path = os.path.dirname(os.path.abspath(__file__))sys.intern(path)  # print(path)# 获取剪贴板中的内容def getText():    w.OpenClipboard()    d = w.GetClipboardData(win32con.CF_TEXT)    w.CloseClipboard()    return (d).decode("GBK")  # 设置剪贴板的类容def set_text(aString):    w.OpenClipboard()    w.EmptyClipboard()    w.SetClipboardData(win32con.CF_TEXT, aString)    w.CloseClipboard()  # 生成资源文件目录访问路径def resource_path(relative_path):    if getattr(sys, "frozen", False):  # 是否Bundle Resource        base_path = sys._MEIPASS    else:        base_path = os.path.abspath(".")    return os.path.join(base_path, relative_path)  # 获取剪贴板中的ip,并判断是否正常def get_ip(ss_ip):    ipList = re.findall(r"[0-9]+(?:.[0-9]+){3}", ss_ip)    # print(ipList)    if ipList:        return ipList    else:        win32api.MessageBox(0, "请您检查复制是否带有IP,请重新测试", "提醒", win32con.MB_OK)        sys.exit(0)  # 获取xls中的数据,和之前剪贴板的数据对比def host(ss_ip):    # 获取execl的内容,这边是根据业务来分析    filename = resource_path(os.path.join("res", "hosts.xls"))    # print(filename)    # execl_hosts = "./hosts.xls"    data1 = xlrd.open_workbook(filename)    page = data1.sheet_by_index(2)    nrows1 = page.nrows    ncols1 = page.ncols    # 获取ip    host_ip = page.col_values(10)    app = page.col_values(1)  # 功能集群    purpose = page.col_values(2)  # 用途    hostname = page.col_values(11)  # 主机名称    # print(host_ip)     # 开始对比数据    start = 0    count = 1    # print(ss_ip)    if str(ss_ip[0]) not in host_ip:        win32api.MessageBox(0, f"暂无设备{ss_ip[0]}的信息", "未知设备", win32con.MB_OK)        sys.exit(0)    for k, item in enumerate(host_ip, start):        # print(k,item,ss_ip[0])        if str(ss_ip[0]) == str(item):            # print("正常:" + item, k)            win32api.MessageBox(0, f"             注意 主机ip:{item}  主机名称:{hostname[k]}  功能集群:{app[k]}  主机用途:{purpose[k]}",                                "发现设备", win32con.MB_OK)            pyperclip.copy(f"主机ip:{item}  主机名称:{hostname[k]}  功能集群:{app[k]}  主机用途:{purpose[k]}")            sys.exit(0)         count = count + 1  def main():    ss_ip = getText()    one_ip = get_ip(ss_ip)    host(one_ip)  if __name__ == "__main__":    main()

测试效果:

打包资源生成exe

Python打包.exe的方法大致有四种:py2exe, pyinstaller,cx_Freeze和nuitka。其中最常用的是pyinstaller。Pyinstaller本身不是python库,但依旧可以安装python库安装方式安装,生成的.exe可以跨多平台使用,也能指定图标。

我们需要把使用到的资源文件都放在一个文件夹里。本文在当前目录下新建了一个名为res的子文件夹来存放资源文件,本文假设res内的资源文件为hosts.xls

修改完.py文件后可以先运行一下,保证无误。然后通过cmd指令:

pyi-makespec -F beloved.py

生成.spec文件。如果要添加Icon等可以在这里就使用pyi-makespec --icon abc.jpg -F beloved.py语句生成spec文件。
接下来,修改.spec文件:

修改前datas=[],本文这里把它改成上图所示,意思是

将beloved.py当前目录下的res目录(及其目录中的文件)加入目标exe中,在运行时放在零时文件的根目录下,名称为res。

生成.exe文件以及其他相关文件

接下来,我们便可以放心的生成.exe文件了。执行cmd指令

pyinstaller -F beloved.spec

.exe文件生成在子文件dict中。到此便可以把.exe发给其他电脑端运行了。.exe运行比较慢,建议多等待,只要没出现错误提示就OK。

读到这里,这篇"Python怎么实现查询剪贴板自动匹配信息"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。

文件 剪贴板 剪贴 生成 主机 内容 信息 查询 目录 资源 功能 名称 运行 数据 文章 用途 设备 集群 接下来 业务 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳九邦互联网科技有限公司 中关村互联网 科技集团 互联网科技公司华为 互联网科技垄断 杭州互联网科技公司 互联网科技媒体 互联网科技网站 广州优美互联网科技 北京华百购互联网科技有限公司 互联网科技教育视频 互联网和黑科技的看法 武汉健翔互联网络科技有限公司 消费医药和互联网科技 阿里互联网科技企业 徐州市互联网科技有限公司 卡尔迅互联网科技有限公司 半导体行业属于互联网高科技类吗 科技互联网行业投资研究 中国新注册互联网科技 小牛互联网科技有限公司地址 上海喔噻互联网科技有限公司 互联网科技金融 科技服务与互联网 佩信高科技互联网 北京华百购互联网科技有限公司 互联网科技项目计划书材料类 工业互联网展湾科技股份有限公司 锡山区互联网智能科技产品供应 工业互联网科技创业 深圳互联网科技园地址
0