Python 조회 클립보드 자동 일치 정보 구현
5124 단어 파 이 썬 조회 클립보드
통속 적 인 사고방식:exe,Python 을 클릭 하여 클립보드 의 내용 을 자동 으로 감시 한 다음 에 IP 를 꺼 내 고 IP 에 따라 업무 문 서 를 비교 하여 해당 하 는 정 보 를 얻 은 다음 에 조 회 된 내용,팝 업 알림 을 꺼 내 서 조 회 된 내용 을 클립보드 에 쓴다.
'''
:
'''
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)
#
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"\t\t
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,cxFreeze 와 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 에 추가 하고 실행 할 때 0 파일 의 루트 디 렉 터 리 에 놓 습 니 다.이름 은 res 입 니 다.
.exe 파일 및 기타 관련 파일 생 성
이제 우 리 는 안심 하고.exe 파일 을 만 들 수 있 습 니 다.cmd 명령 실행
pyinstaller -F beloved.spec
.exe 파일 은 하위 파일 dict 에서 생 성 됩 니 다.여기 서.exe 를 다른 컴퓨터 에 보 내 서 실행 할 수 있 습 니 다.exe 실행 이 느 리 므 로 기다 리 는 것 을 권장 합 니 다.오류 알림 이 없 으 면 OK 입 니 다.
참고 주소:https://blog.csdn.net/qq_44685030/article/details/105096338
파 이 썬 이 클립보드 에 자동 으로 일치 하 는 정 보 를 조회 하 는 것 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 파 이 썬 조회 클립보드 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!