Python监听剪切板的两种方法
生活随笔
收集整理的這篇文章主要介紹了
Python监听剪切板的两种方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
第一種
import win32clipboard import time #速度快 容易出錯 class niubi():def lihai(self):while True:#jianting().main()t = jianting().main()print(t)class jianting():def clipboard_get(self):"""獲取剪貼板數據"""win32clipboard.OpenClipboard()data = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT)win32clipboard.CloseClipboard()return datadef main(self):"""后臺腳本:每隔0.2秒,讀取剪切板文本,檢查有無指定字符或字符串,如果有則執行替換"""# recent_txt 存放最近一次剪切板文本,初始化值只多執行一次paste函數讀取和替換recent_txt = self.clipboard_get()while True:# txt 存放當前剪切板文本txt = self.clipboard_get()# 剪切板內容和上一次對比如有變動,再進行內容判斷,判斷后如果發現有指定字符在其中的話,再執行替換if txt != recent_txt:# print(f'txt:{txt}')recent_txt = txt # 沒查到要替換的子串,返回Nonereturn recent_txt# 檢測間隔(延遲0.2秒)time.sleep(0.2)if __name__ == '__main__':niubi().lihai()速度快,但很容易出錯, 一般人感覺不出來速度。 不建議使用。
方法二:
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:531509025 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' import pyperclip import time#穩定不出錯 class niubi():def lihai(self):while True:#jianting().main()t = jianting().main()print(t) class jianting():def clipboard_get(self):"""獲取剪貼板數據"""data = pyperclip.paste() #主要這里差別return datadef main(self):"""后臺腳本:每隔0.2秒,讀取剪切板文本,檢查有無指定字符或字符串,如果有則執行替換"""# recent_txt 存放最近一次剪切板文本,初始化值只多執行一次paste函數讀取和替換recent_txt = self.clipboard_get()while True:# txt 存放當前剪切板文本txt = self.clipboard_get()# 剪切板內容和上一次對比如有變動,再進行內容判斷,判斷后如果發現有指定字符在其中的話,再執行替換if txt != recent_txt:# print(f'txt:{txt}')recent_txt = txt # 沒查到要替換的子串,返回Nonereturn recent_txt# 檢測間隔(延遲0.2秒)time.sleep(0.2)if __name__ == '__main__':niubi().lihai()我一般把第二種 用在程序中。
總結
以上是生活随笔為你收集整理的Python监听剪切板的两种方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 两种多线程比较
- 下一篇: python多种推导式的实现