Python監聽剪切板實現方法代碼實例
第一種
import win32clipboardimport 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 data def 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()
速度快,但很容易出錯, 一般人感覺不出來速度。 不建議使用。
第二種
import pyperclipimport 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 data def 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()
我一般把第二種 用在程序中。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
