一、需求背景
每天早上取一批數據,數據文件經過壓縮加密之后用郵箱發送,而解壓密碼通過QQ發送給運營。使用Python進行取數、文件加密在已經實現的情況下,需要實現通過QQ發送密碼的功能。
在進行一系列搜索之后,在網上找到了相關資料,了解到可以使用win32gui該功能。實現該功能的主要思路是:
1 使用win32clipboard將文本粘貼在剪貼板中;
2 使用win32gui.FindWindow找到對應的窗體;
3 使用win32gui.SendMessage發送消息
二、實現代碼
import win32gui import win32con import win32clipboard as w class sendMsg(): def __init__(self,receiver,msg): self.receiver=receiver self.msg=msg self.setText() #設置剪貼版內容 def setText(self): w.OpenClipboard() w.EmptyClipboard() w.SetClipboardData(win32con.CF_UNICODETEXT, self.msg) w.CloseClipboard() #發送消息 def sendmsg(self): qq=win32gui.FindWindow(None,self.receiver) win32gui.SendMessage(qq,win32con.WM_PASTE , 0, 0) #win32on 見site-packages\win32\lib\win32con.py,有的博文里出現的770對用的就是win32con.WM_PASTE win32gui.SendMessage(qq, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0) if __name__ == '__main__': receiver='大兄弟' msg="測試" qq=sendMsg(receiver,msg) qq.sendmsg()