Python自动化实现关键词自动回复

前置条件
1、需要windows保持开机
2、需要微信保持在前台显示```
3、相对应的python库下载
```bash
import pandas as pd
import numpy as np
from uiautomation import WindowControl, MenuControl
import win32gui
import win32con
import pyautogui
 
# 获取窗口句柄并打开窗口
def getHwnd():
        hwnd = win32gui.FindWindow('WeChatMainWndForPC','微信')
        win32gui.ShowWindow(hwnd, win32con.SW_SHOWMINIMIZED)
        win32gui.ShowWindow(hwnd, win32con.SW_SHOWNORMAL)
        win32gui.ShowWindow(hwnd, win32con.SW_SHOW)
        win32gui.SetForegroundWindow(hwnd)
        return hwnd
 
# 复位(自动回复之后自动点击消息列表第二个聊天窗口)
def fuwei(hwnd):
        left, top, right, bottom = win32gui.GetWindowRect(hwnd)
        leftpoint = left+155
        toppoint = top+150
        pyautogui.moveTo(leftpoint, toppoint)
        pyautogui.click()
        return '已复位'
 
getHwnd()
wx = WindowControl(Name="微信")
wx.SwitchToThisWindow()
hw = wx.ListControl(Name="会话")
 
# 持续循环监听未读消息
while True:
        we = hw.TextControl(searchDepth=4)
        # 如果存在未读消息
        if we.Name:
                we.Click(simulateMove=False)
                # 获取当前最后一条消息
                last_msg = wx.ListControl(Name='消息').GetChildren()[-1].Name
                if last_msg == 'hello':
                        wx.SendKeys('hello,joy{ENTER}')
                        fuwei(getHwnd())
                elif last_msg == '今天阳光明媚':
                        wx.SendKeys('适合外出{ENTER}')
                        fuwei(getHwnd())
                elif last_msg == '学习新思想':
                        wx.SendKeys('学习新思想,争做新青年{ENTER}')
                        fuwei(getHwnd())
           # 读取信息关键词进行回复,如果关键词不够则无法进行回复做个异常处理
                else:
                        wx.SendKeys('不知道如何进行回复{ENTER}')
                        fuwei(getHwnd())
实现起来也是极其容易的,使用uiautomation这个库来识别微信电脑版的控件内容,
通过持续循环来检测消息列表是否存在未读消息,如果存在未读消息,
那么就自动点击进入这个消息的窗口,然后检索窗口最后一条消息,
检索自动回复的关键词库是否有这个关键词,如果存在此关键词,则直接回复。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值