实现微信自动回复消息,解放你的双手!

一、准备工作

我们要提前安装pyautogui(用于控制鼠标键盘进行点击操作)和pyperclip(用于复制粘贴板上的内容)

二、大致思路

模拟鼠标点击微信的图标,那如何让程序点它呢,我们需要识别微信图标!我们在桌面找到微信,截一张微信图标保存至程序同一目录下,这样就可以识别啦,点击之后,那又如何自动给他人发消息呢,我们仍然需要识别,这次识别的是搜索框,截一张搜索框的图片保存至程序同一目录下,这样程序就知道我们需要点击这里啦,再在搜索框中输入你想发送的人的名称,单击,再将剪切板的内容粘贴至聊天框,enter键一点,就实现自动发送啦。是不是觉得so easy呢,那我们用代码实现下~

三、代码展示

import time
import pyautogui   #鼠标键盘操作
import pyperclip   #模拟剪贴板
import os

#识别图像的函数(让计算机直到你要点哪个图标)
def mapping_img(img,click):
    box_location=pyautogui.locateOnScreen(img)
    center=pyautogui.center(box_location)
    if click=='double':
        pyautogui.doubleClick(center)
    else:
        pyautogui.leftClick(center)
    time.sleep(1)

#自动搜索(别人或自己)
def chat_user(user):
    if user !='':
        #搜索别人
        mapping_img('search.png','single')
        pyautogui.typewrite(user)
        time.sleep(1)
        pyautogui.moveRel(xOffset=0,yOffset=80)#将鼠标移至下方,参数则为位置
        pyautogui.press('enter')
        pyautogui.press('enter')
        time.sleep(5)                    
    else:
        #搜索自己(两张图,一个是头像图,一个是消息图,自己试试点击头像就知道什么意思啦)
        mapping_img('shao.png','single') 
        mapping_img('chat.png','single') 
 
#读取txt文件并粘贴发送的函数        
def read_txt(txt):
    file=open(txt,"r",encoding='utf-8') #读文件
    content=file.readlines()
    pyperclip.copy(content[0])
    pyautogui.hotkey('ctrl','v') #复制啦
    file.close()


def main():
    os.chdir("D:/Users/OCR") #切换到当前工作目录
    print(os.getcwd())      
    mapping_img('wechat.png','double')
    chat_user('wenjianchuanshuzhushou') #这是个栗子,里头如果不填就是发送自己啦
    read_txt('xxxx.txt')    #同目录建立个txt文本,上面便是你要自动发消息的内容
    pyautogui.press('enter')
    time.sleep(2)

if __name__=='__main__':
    main()

四、一些常见问题与解决方法

1.关于安装库失败,可以多试几次,换不同方式安装。如果安装好仍现实报错,可能因为不兼容,可以在命令行输入命令安装较低版本的。

2.若发现在图片的位置报错,那就是因为没有被识别到啦,再截一遍图存好,注意要让图标能出现在你的视线范围(就是桌面啦)内,如果移动了微信位置,可能导致背景不一而不被识别噢。

3.还有可能会报错是因为网速不太好,有延迟也会使程序进行不下去噢,可以适当加入time.sleep(),多试几次。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐