10分钟教你用Python实现微信自动回复

简介: 10分钟教你用Python实现微信自动回复

01


前言&&效果展示


相信大家都有忙碌的时候,不可能一直守在微信上及时回复消息。但微信又不能像QQ一样设置自动回复。无妨,今天,我们就来用Python实现微信的自动回复功能吧,并且把接收到的消息统一发送到文件助手里面,方便统一查看。

效果如下:

微信图片_20220421153922.jpg微信图片_20220421153925.jpg



 

02


环境准备


Python版本:3.6.0

系统平台:Windows 10 X64

IDE:pycharm


相关模块:

time模块;

itchat模块;

以及一些Python自带的模块。


03


实现原理


其实原理很简单,主要是利用itchat登录微信后,注册消息方法。itchat将根据接收到的消息类型寻找对应的已经注册的方法。如果一个消息类型没有对应的注册方法,该消息将会被舍弃。在这里我们主要注册的是文字类型的消息方法。然后判断消息来源,如果不是自己发出的消息,则将消息转发到文件助手,然后自动回复对方。代码如下:

1# 自动回复
 2# 封装好的装饰器,当接收到的消息是Text,即文字消息
 3# 注册消息响应事件,消息类型为'Text',即文本消息
 4@itchat.msg_register('Text')
 5def text_reply(msg):
 6    # 当消息不是由自己发出的时候
 7    if not msg['FromUserName'] == myUserName:
 8        # 发送一条提示给文件助手
 9        itchat.send_msg(u"[%s]收到好友@%s 的信息:%s\n" %
10                        (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(msg['CreateTime'])),
11                         msg['User']['NickName'],
12                         msg['Text']), 'filehelper')
13        # 回复给好友
14        return '[自动回复]您好,我现在有事不在,一会再和您联系。\n已经收到您的的信息:%s\n' % (msg['Text'])

转到文件助手的时候,注意把时间什么的添加上去。看上去效果更好。


04


后台登录


然后就可以把我们的微信挂在后台自动回复了。注意运行的时候获取一下自己的微信名,以便用来判断消息是不是自己发出的。

1if __name__ == '__main__':
2    itchat.auto_login()
3
4    # 获取自己的UserName
5    myUserName = itchat.get_friends(update=True)[0]["UserName"]
6    itchat.run()


后台登录如下:

微信图片_20220421153928.jpg

好啦,是不是很简单呢?

05


完整代码

注:代码文件获取请移步留言区。

1import itchat
 2import time
 3
 4# 自动回复
 5# 封装好的装饰器,当接收到的消息是Text,即文字消息
 6# 注册消息响应事件,消息类型为'Text',即文本消息
 7@itchat.msg_register('Text')
 8def text_reply(msg):
 9    # 当消息不是由自己发出的时候
10    if not msg['FromUserName'] == myUserName:
11        # 发送一条提示给文件助手
12        itchat.send_msg(u"[%s]收到好友@%s 的信息:%s\n" %
13                        (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(msg['CreateTime'])),
14                         msg['User']['NickName'],
15                         msg['Text']), 'filehelper')
16        # 回复给好友
17        return '[自动回复]您好,我现在有事不在,一会再和您联系。\n已经收到您的的信息:%s\n' % (msg['Text'])
18
19if __name__ == '__main__':
20    itchat.auto_login()
21
22    # 获取自己的UserName
23    myUserName = itchat.get_friends(update=True)[0]["UserName"]
24    itchat.run()
相关文章
|
24天前
|
Android开发 开发者 Python
通过标签清理微信好友:Python自动化脚本解析
微信已成为日常生活中的重要社交工具,但随着使用时间增长,好友列表可能变得臃肿。本文介绍了一个基于 Python 的自动化脚本,利用 `uiautomator2` 库,通过模拟用户操作实现根据标签批量清理微信好友的功能。脚本包括环境准备、类定义、方法实现等部分,详细解析了如何通过标签筛选并删除好友,适合需要批量管理微信好友的用户。
33 7
|
3月前
|
小程序 API 开发工具
使用python 实现微信签到提醒功能
【9月更文挑战第4天】使用python 实现微信签到提醒功能
88 2
|
7月前
|
数据采集 测试技术 API
python爬虫之app爬取-微信朋友圈
搭建appium环境,appium基本使用,API操作等等
295 0
|
6月前
|
安全 UED 黑灰产治理
微信留言自动回复(Python实现)
本项目旨在使用Python与Windows GUI自动化工具来自动化微信的操作,作用为读取未读消息、根据关键词回复消息
256 0
|
6月前
|
Python
用Python实现QQ/微信消息轰炸
用Python实现QQ/微信消息轰炸
|
6月前
|
Python 数据格式
使用Python批量处理微信榜单数据
使用Python批量处理微信榜单数据
|
7月前
|
人工智能 算法 API
【Python+微信】【企业微信开发入坑指北】0. 创建自建应用并接入自己的服务
【Python+微信】【企业微信开发入坑指北】0. 创建自建应用并接入自己的服务
115 0
【Python+微信】【企业微信开发入坑指北】0. 创建自建应用并接入自己的服务
|
7月前
|
开发工具 Python
90行python代码让微信开屏地球转起来,太酷了!
90行python代码让微信开屏地球转起来,太酷了!
|
7月前
|
数据采集 存储 人工智能
【Python+微信】【企业微信开发入坑指北】4. 企业微信接入GPT,只需一个URL,自动获取文章总结
【Python+微信】【企业微信开发入坑指北】4. 企业微信接入GPT,只需一个URL,自动获取文章总结
162 0
|
7月前
|
人工智能 机器人 API
【Python+微信】【企业微信开发入坑指北】3. 如何利用企业微信API给微信群推送消息
【Python+微信】【企业微信开发入坑指北】3. 如何利用企业微信API给微信群推送消息
313 0