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):
"""獲取剪貼板數(shù)據(jù)"""
win32clipboard.OpenClipboard()
data = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT)
win32clipboard.CloseClipboard()
return data
def main(self):
"""后臺腳本:每隔0.2秒,讀取剪切板文本,檢查有無指定字符或字符串,如果有則執(zhí)行替換"""
# recent_txt 存放最近一次剪切板文本,初始化值只多執(zhí)行一次paste函數(shù)讀取和替換
recent_txt = self.clipboard_get()
while True:
# txt 存放當(dāng)前剪切板文本
txt = self.clipboard_get()
# 剪切板內(nèi)容和上一次對比如有變動,再進(jìn)行內(nèi)容判斷,判斷后如果發(fā)現(xiàn)有指定字符在其中的話,再執(zhí)行替換
if txt != recent_txt:
# print(f'txt:{txt}')
recent_txt = txt # 沒查到要替換的子串,返回None
return recent_txt
# 檢測間隔(延遲0.2秒)
time.sleep(0.2)
if __name__ == '__main__':
niubi().lihai()
速度快,但很容易出錯, 一般人感覺不出來速度。 不建議使用。
第二種
import pyperclip
import time
#穩(wěn)定不出錯
class niubi():
def lihai(self):
while True:
#jianting().main()
t = jianting().main()
print(t)
class jianting():
def clipboard_get(self):
"""獲取剪貼板數(shù)據(jù)"""
data = pyperclip.paste() #主要這里差別
return data
def main(self):
"""后臺腳本:每隔0.2秒,讀取剪切板文本,檢查有無指定字符或字符串,如果有則執(zhí)行替換"""
# recent_txt 存放最近一次剪切板文本,初始化值只多執(zhí)行一次paste函數(shù)讀取和替換
recent_txt = self.clipboard_get()
while True:
# txt 存放當(dāng)前剪切板文本
txt = self.clipboard_get()
# 剪切板內(nèi)容和上一次對比如有變動,再進(jìn)行內(nèi)容判斷,判斷后如果發(fā)現(xiàn)有指定字符在其中的話,再執(zhí)行替換
if txt != recent_txt:
# print(f'txt:{txt}')
recent_txt = txt # 沒查到要替換的子串,返回None
return recent_txt
# 檢測間隔(延遲0.2秒)
time.sleep(0.2)
if __name__ == '__main__':
niubi().lihai()
我一般把第二種 用在程序中。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持python博客。
總結(jié)
以上是生活随笔為你收集整理的python监听剪贴板_Python监听剪切板实现方法代码实例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (linux 网桥桥)
- 下一篇: ddos流量攻击在线攻击是什么(ddos