欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)查詢剪貼板自動匹配信息的思路詳解

 更新時間:2021年07月09日 14:13:17   作者:南宮乘風(fēng)  
這篇文章主要介紹了Python實(shí)現(xiàn)查詢剪貼板自動匹配信息,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

不想每次都要去查execl,想更方便點(diǎn),更快一點(diǎn)。

通俗點(diǎn)思路:點(diǎn)擊exe,Python 自動監(jiān)控剪貼板的內(nèi)容,然后正則取出IP,接著根據(jù)IP對比業(yè)務(wù)文檔,獲取相應(yīng)的信息,然后把查詢出來的內(nèi)容,彈出提示,把查詢出的內(nèi)容寫入剪貼板。

'''
功能作用:對比剪貼板類容
'''
 
import win32clipboard as w
import win32con
import xlrd
from tkinter import messagebox
import win32api, win32con
import pyperclip
import re
import sys
import os
 
# print(__file__)
 
path = os.path.dirname(os.path.abspath(__file__))
sys.intern(path)
 
 
# print(path)
# 獲取剪貼板中的內(nèi)容
def getText():
    w.OpenClipboard()
    d = w.GetClipboardData(win32con.CF_TEXT)
    w.CloseClipboard()
    return (d).decode('GBK')
 
 
# 設(shè)置剪貼板的類容
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, "請您檢查復(fù)制是否帶有IP,請重新測試", "提醒", win32con.MB_OK)
        sys.exit(0)
 
 
# 獲取xls中的數(shù)據(jù),和之前剪貼板的數(shù)據(jù)對比
def host(ss_ip):
    # 獲取execl的內(nèi)容,這邊是根據(jù)業(yè)務(wù)來分析
    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)  # 主機(jī)名稱
    # print(host_ip)
 
    # 開始對比數(shù)據(jù)
    start = 0
    count = 1
    # print(ss_ip)
    if str(ss_ip[0]) not in host_ip:
        win32api.MessageBox(0, f"暫無設(shè)備{ss_ip[0]}的信息", "未知設(shè)備", 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"\t\t注意\n 主機(jī)ip:{item}  主機(jī)名稱:{hostname[k]} \n 功能集群:{app[k]}  主機(jī)用途:{purpose[k]}",
                                "發(fā)現(xiàn)設(shè)備", win32con.MB_OK)
            pyperclip.copy(f"主機(jī)ip:{item}  主機(jī)名稱:{hostname[k]} \n 功能集群:{app[k]}  主機(jī)用途:{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可以跨多平臺使用,也能指定圖標(biāo)。

我們需要把使用到的資源文件都放在一個文件夾里。本文在當(dāng)前目錄下新建了一個名為res的子文件夾來存放資源文件,本文假設(shè)res內(nèi)的資源文件為hosts.xls

修改完.py文件后可以先運(yùn)行一下,保證無誤。然后通過cmd指令:

pyi-makespec -F beloved.py

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

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

將beloved.py當(dāng)前目錄下的res目錄(及其目錄中的文件)加入目標(biāo)exe中,在運(yùn)行時放在零時文件的根目錄下,名稱為res。

生成.exe文件以及其他相關(guān)文件

接下來,我們便可以放心的生成.exe文件了。執(zhí)行cmd指令

pyinstaller -F beloved.spec

.exe文件生成在子文件dict中。到此便可以把.exe發(fā)給其他電腦端運(yùn)行了。.exe運(yùn)行比較慢,建議多等待,只要沒出現(xiàn)錯誤提示就OK。

參考地址:https://blog.csdn.net/qq_44685030/article/details/105096338

到此這篇關(guān)于Python實(shí)現(xiàn)查詢剪貼板自動匹配信息的文章就介紹到這了,更多相關(guān)Python查詢剪貼板內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • PyQT5 QTableView顯示綁定數(shù)據(jù)的實(shí)例詳解

    PyQT5 QTableView顯示綁定數(shù)據(jù)的實(shí)例詳解

    今天小編就為大家分享一篇PyQT5 QTableView顯示綁定數(shù)據(jù)的實(shí)例詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • 使用tensorflow實(shí)現(xiàn)矩陣分解方式

    使用tensorflow實(shí)現(xiàn)矩陣分解方式

    今天小編就為大家分享一篇使用tensorflow實(shí)現(xiàn)矩陣分解方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • python用socket傳輸圖片的項(xiàng)目實(shí)踐

    python用socket傳輸圖片的項(xiàng)目實(shí)踐

    使用python在網(wǎng)絡(luò)上傳送圖片數(shù)據(jù),需要以byte格式讀取圖片,這樣才可以通過socket傳輸,本文就來介紹了python用socket傳輸圖片的項(xiàng)目實(shí)踐,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-02-02
  • Python?命令行解析工具?argparse基本用法

    Python?命令行解析工具?argparse基本用法

    在工作中,我們經(jīng)常需要從命令行當(dāng)中解析出指定的參數(shù),而?Python?也提供了相應(yīng)的標(biāo)準(zhǔn)庫來做這件事情,比如?sys,?optparse,?getopt,?argparse,這里面功能最強(qiáng)大的莫過于?argparse,下面就來看看它用法,需要的朋友可以參考下
    2022-12-12
  • 深入淺析python 協(xié)程與go協(xié)程的區(qū)別

    深入淺析python 協(xié)程與go協(xié)程的區(qū)別

    這篇文章主要介紹了python 協(xié)程與go協(xié)程的區(qū)別 ,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • Python中處理字符串之islower()方法的使用簡介

    Python中處理字符串之islower()方法的使用簡介

    這篇文章主要介紹了Python中處理字符串之islower()方法的使用,是Python入門的基礎(chǔ)知識,需要的朋友可以參考下
    2015-05-05
  • Django展示可視化圖表的多種方式

    Django展示可視化圖表的多種方式

    這篇文章主要介紹了Django展示可視化圖表的多種方式,幫助大家更好的理解和學(xué)習(xí)使用django框架,感興趣的朋友可以了解下
    2021-04-04
  • Python打印輸出數(shù)組中全部元素

    Python打印輸出數(shù)組中全部元素

    使用Python打印數(shù)組時會遇到一個問題,當(dāng)打印的數(shù)組元素比較多時,會出現(xiàn)只打印出數(shù)組開始與結(jié)尾部分中間部分用省略省略了,下面的方法可以完美解決這個問題
    2018-03-03
  • Python爬蟲實(shí)現(xiàn)(偽)球迷速成

    Python爬蟲實(shí)現(xiàn)(偽)球迷速成

    還有4天就世界杯了,作為一個資深(偽)球迷,必須要實(shí)時關(guān)注世界杯相關(guān)新聞,了解各個球隊(duì)動態(tài),下面小編給大家?guī)砹薖ython爬蟲實(shí)現(xiàn)(偽)球迷速成功能,一起看看吧
    2018-06-06
  • python中for語句簡單遍歷數(shù)據(jù)的方法

    python中for語句簡單遍歷數(shù)據(jù)的方法

    這篇文章主要介紹了python中for語句簡單遍歷數(shù)據(jù)的方法,以一個簡單實(shí)例形式分析了Python中for語句遍歷數(shù)據(jù)的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-05-05

最新評論