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实现测试磁盘性能的方法
Mar 12 Python
Python利用Nagios增加微信报警通知的功能
Feb 18 Python
详解python中Numpy的属性与创建矩阵
Sep 10 Python
NLTK 3.2.4 环境搭建教程
Sep 19 Python
Python中一般处理中文的几种方法
Mar 06 Python
python把转列表为集合的方法
Jun 28 Python
Python 图像对比度增强的几种方法(小结)
Sep 25 Python
Python2与Python3的区别详解
Feb 09 Python
在CentOS7下安装Python3教程解析
Jul 09 Python
python实现逻辑回归的示例
Oct 09 Python
一篇文章教你用python画动态爱心表白
Nov 22 Python
python中sqllite插入numpy数组到数据库的实现方法
Jun 21 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
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
2014/01/03 PHP
浅析php创建者模式
2014/11/25 PHP
php 调用ffmpeg获取视频信息的简单实现
2017/04/03 PHP
jquery tools系列 expose 学习
2009/09/06 Javascript
javascript json 新手入门文档
2009/12/03 Javascript
IE浏览器打印的页眉页脚设置解决方法
2009/12/08 Javascript
jQuery 美元符冲突的解决方法
2010/03/28 Javascript
javascript中使用css需要注意的地方小结
2010/09/01 Javascript
javascript 使td内容不换行不撑开
2012/11/29 Javascript
jQuery中关于ScrollableGridPlugin.js(固定表头)插件的使用逐步解析
2014/07/17 Javascript
JavaScript使用RegExp进行正则匹配的方法
2015/07/11 Javascript
jquery validate demo 基础
2015/10/29 Javascript
jQuery+CSS3实现3D立方体旋转效果
2015/11/10 Javascript
javascript实现平滑无缝滚动
2020/08/09 Javascript
jquery.qtip提示信息插件用法简单实例
2016/06/17 Javascript
js事件源window.event.srcElement兼容性写法(详解)
2016/11/25 Javascript
Javascrip实现文字跳动特效
2016/11/27 Javascript
vue mixins组件复用的几种方式(小结)
2017/09/06 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
vue实现登录后页面跳转到之前页面
2018/01/07 Javascript
Angular异步变同步处理方法
2018/08/13 Javascript
解决angularjs service中依赖注入$scope报错的问题
2018/10/02 Javascript
Vue SPA 初次进入加载动画实现代码
2019/11/14 Javascript
详解JSON.stringify()的5个秘密特性
2020/05/26 Javascript
python中的yield使用方法
2014/02/11 Python
linux平台使用Python制作BT种子并获取BT种子信息的方法
2017/01/20 Python
详细解读tornado协程(coroutine)原理
2018/01/15 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
2020/01/10 Python
Keras框架中的epoch、bacth、batch size、iteration使用介绍
2020/06/10 Python
python进行OpenCV实战之画图(直线、矩形、圆形)
2020/08/27 Python
python xlsxwriter模块的使用
2020/12/24 Python
教师党员思想汇报
2014/01/06 职场文书
亲戚结婚的请假条
2014/02/11 职场文书
班级心理活动总结
2014/07/04 职场文书
群众路线教育实践活动民主生活会个人检查对照思想汇报
2014/10/04 职场文书
保险公司客户经理岗位职责
2015/04/09 职场文书