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


Posted in Python onNovember 28, 2018

 01 前言&&效果展示

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

效果如下:

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

02 环境准备

Python版本:3.6.0
系统平台:Windows 10 X64
IDE:pycharm

相关模块:
time模块;
itchat模块;

以及一些Python自带的模块。

03 实现原理

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

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

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

04 后台登录

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

if __name__ == '__main__':
 itchat.auto_login()
 # 获取自己的UserName
 myUserName = itchat.get_friends(update=True)[]["UserName"]
 itchat.run()

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

总结

以上所述是小编给大家介绍的10分钟教你用Python实现微信自动回复,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python 输出一个两行字符的变量
Feb 05 Python
Python multiprocessing.Manager介绍和实例(进程间共享数据)
Nov 21 Python
Python调用SQLPlus来操作和解析Oracle数据库的方法
Apr 09 Python
windows 10下安装搭建django1.10.3和Apache2.4的方法
Apr 05 Python
opencv-python 读取图像并转换颜色空间实例
Dec 09 Python
Python使用Pandas库常见操作详解
Jan 16 Python
python对接ihuyi实现短信验证码发送
May 10 Python
Django获取model中的字段名和字段的verbose_name方式
May 19 Python
pycharm永久激活超详细教程
Oct 29 Python
python 批量下载bilibili视频的gui程序
Nov 20 Python
解决Pytorch半精度浮点型网络训练的问题
May 24 Python
浅谈Python数学建模之线性规划
Jun 23 Python
Linux CentOS Python开发环境搭建教程
Nov 28 #Python
Python 获取中文字拼音首个字母的方法
Nov 28 #Python
Python3爬虫使用Fidder实现APP爬取示例
Nov 27 #Python
python如何查看微信消息撤回
Nov 27 #Python
python中退出多层循环的方法
Nov 27 #Python
为什么Python中没有"a++"这种写法
Nov 27 #Python
django session完成状态保持的方法
Nov 27 #Python
You might like
跟我学小偷程序之成功偷取首页(第三天)
2006/10/09 PHP
php根据日期判断星座的函数分享
2014/02/13 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(一)
2014/06/23 PHP
PHP钩子实现方法解析
2019/05/21 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
2019/07/03 PHP
jQuery Mobile 导航栏代码
2013/11/01 Javascript
JavaScript创建一个object对象并操作对象属性的用法
2015/03/23 Javascript
JavaScript动态添加style节点的方法
2015/06/09 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
2015/12/08 Javascript
基于BootStrap的图片轮播效果展示实例代码
2016/05/23 Javascript
js轮播图代码分享
2016/07/14 Javascript
jQuery Ajax前后端使用JSON进行交互示例
2017/03/17 Javascript
VUE长按事件需求详解
2017/10/18 Javascript
详解使用create-react-app添加css modules、sasss和antd
2018/07/31 Javascript
微信小程序分享功能onShareAppMessage(options)用法分析
2019/04/24 Javascript
vue+Element实现搜索关键字高亮功能
2019/05/28 Javascript
纯异步nodejs文件夹(目录)复制功能
2019/09/03 NodeJs
layui table设置某一行的字体颜色方法
2019/09/05 Javascript
Vue中通过属性绑定为元素绑定style行内样式的实例代码
2020/04/30 Javascript
Jquery滑动门/tab切换实现方法完整示例
2020/06/05 jQuery
javascript利用canvas实现鼠标拖拽功能
2020/07/23 Javascript
Node.js利用Express实现用户注册登陆功能(推荐)
2020/10/26 Javascript
从零学Python之入门(五)缩进和选择
2014/05/27 Python
python简单获取本机计算机名和IP地址的方法
2015/06/03 Python
深入理解Python单元测试unittest的使用示例
2017/11/18 Python
Flask之pipenv虚拟环境的实现
2019/11/26 Python
Python 获取numpy.array索引值的实例
2019/12/06 Python
python爬取王者荣耀全皮肤的简单实现代码
2020/01/31 Python
python随机生成大小写字母数字混合密码(仅20行代码)
2020/02/01 Python
Scrapy 配置动态代理IP的实现
2020/09/28 Python
英国最全面的橄榄球联盟门票网站:Live Rugby Tickets
2018/10/06 全球购物
十佳教师事迹材料
2014/01/11 职场文书
《问银河》教学反思
2014/02/19 职场文书
《蓝色的树叶》教学反思
2014/02/24 职场文书
上班迟到检讨书范文
2015/05/06 职场文书
Pytorch中TensorBoard及torchsummary的使用详解
2021/05/12 Python