Python实现QQ PC端给好友发送消息
上一篇说了发现有交易机会时可以发邮件,如果不想下载邮箱app的话,也可以通过qq来提醒自己.
具体的方法就是先查找qq的句柄,然后用SendMessage给qq窗口发送消息.这样的前提就是跟好友的聊天窗口必须是打开的状态.
创建代码SendQQMessage.py:
1 import win32gui 2 import win32con 3 import win32clipboard 4 5 class CSendQQMsg(): 6 def __init__(self, friendName, msg): 7 self.friendName = friendName 8 self.msg=msg 9 10 def setText(self):#把要发送的消息复制到剪贴板 11 win32clipboard.OpenClipboard() 12 win32clipboard.EmptyClipboard() 13 win32clipboard.SetClipboardData(win32con.CF_UNICODETEXT, self.msg) 14 win32clipboard.CloseClipboard() 15 16 def sendmsg(self):#给好友发送消息 17 self.setText() 18 hwndQQ = win32gui.FindWindow(None,self.friendName)#找到名字为'王三'的窗口 19 if hwndQQ == 0: 20 print('未找到qq对话框') 21 return 22 win32gui.SendMessage(hwndQQ,win32con.WM_PASTE , 0, 0) 23 win32gui.SendMessage(hwndQQ, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0) 24 25 26 if __name__ == '__main__': 27 friendName='王三' 28 msg="你好" 29 qq = CSendQQMsg(friendName,msg) 30 qq.sendmsg()
在cmd.exe中cd到该脚本目录,python SendQQMessage.py即可成功给好友王三发"你好"的消息