Python 使用 win32api 发送 QQ 消息

运行注意事项:

  1. 可能会受到版本影响, 导致文字发出去乱码 建议使用 unicode 发送
  2. 运行脚本环境 Python 2.8
  3. 会存在找不到窗口句柄的情况 所以最好将 对话框放在桌面最上层
  4. 关于鼠标事件,需要确定坐标, 如果不知道坐标可以把坐标悬停在qq对话框的输入区域
    MOUSEEVENTF_LEFTDOWN-------------鼠标左键按下
    MOUSEEVENTF_LEFTUP------------------鼠标左键弹起
    MOUSEEVENTF_RIGHTDOWN-------------鼠标右键按下
    MOUSEEVENTF_RIGHTUP-------------------鼠标右键弹起
    MOUSEEVENTF_MIDDLEDOWN----------鼠标中键按下
    MOUSEEVENTF_MIDDLEUP----------------鼠标中键弹起
    MOUSEEVENTF_MOVE-----------------------移动鼠标
    MOUSEEVENTF_ABSOLUTE---------------绝对坐标
    MOUSEEVENTF_WHEEL---------------------滚轮滚动
class QQMessageSend:
    def send_message(self, msg):
        # 窗口名字,就是备注名
        name = u"我的iPhone"
        # 将测试消息复制到剪切板中
        w.OpenClipboard()
        w.EmptyClipboard()
        w.SetClipboardData(win32con.CF_UNICODETEXT, msg)
        w.CloseClipboard()
        # 获取窗口句柄
        handle = win32gui.FindWindow(None, name)
        # 点击输入框
        win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0)
        win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0)
        if handle:
            # 填充消息
            win32gui.SendMessage(handle, 770, 0, 0)
            # 回车发送消息
            win32gui.SendMessage(handle, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值