Python发送QQ消息

一、需求背景
  每天早上取一批数据,数据文件经过压缩加密之后用邮箱发送,而解压密码通过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()

 

posted on 2019-09-19 19:33  沉默的旅行者  阅读(14049)  评论(0编辑  收藏  举报

导航