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实现读取目录所有文件的文件名并保存到txt文件代码
Nov 22 Python
用Python创建声明性迷你语言的教程
Apr 13 Python
Python简单调用MySQL存储过程并获得返回值的方法
Jul 20 Python
Python 模板引擎的注入问题分析
Jan 01 Python
python 打印直角三角形,等边三角形,菱形,正方形的代码
Nov 21 Python
pandas中apply和transform方法的性能比较及区别介绍
Oct 30 Python
python命令行参数用法实例分析
Jun 25 Python
Python 写入训练日志文件并控制台输出解析
Aug 13 Python
pytorch使用tensorboardX进行loss可视化实例
Feb 24 Python
Pytorch中的自动求梯度机制和Variable类实例
Feb 29 Python
Python IDE环境之 新版Pycharm安装详细教程
Mar 05 Python
Python安装第三方库攻略(pip和Anaconda)
Oct 15 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
农民C键的运用技巧
2020/03/04 星际争霸
php disk_free_space 返回目录可用空间
2010/05/10 PHP
php 文件上传实例代码
2012/04/19 PHP
php 地区分类排序算法
2013/07/01 PHP
PHP解密Unicode及Escape加密字符串
2015/05/17 PHP
javascript开发随笔一 preventDefault的必要
2011/11/25 Javascript
jquery live()调用不存在的解决方法
2014/02/26 Javascript
javascript实现十六进制颜色值(HEX)和RGB格式相互转换
2014/06/20 Javascript
浅析Bootstrap表格的使用
2016/06/23 Javascript
深入理解Javascript箭头函数中的this
2017/02/13 Javascript
微信小程序scroll-view实现横向滚动和上拉加载示例
2017/03/06 Javascript
Vue.js实战之使用Vuex + axios发送请求详解
2017/04/04 Javascript
JavaScript字符串检索字符的方法
2017/06/23 Javascript
Angular4开发解决跨域问题详解
2017/08/28 Javascript
vue移动端轻量级的轮播组件实现代码
2018/07/12 Javascript
vue-router判断页面未登录自动跳转到登录页的方法示例
2018/11/04 Javascript
jQuery实现高级检索功能
2019/05/28 jQuery
vue 解决异步数据更新问题
2019/10/29 Javascript
Vue 的双向绑定原理与用法揭秘
2020/05/06 Javascript
[03:20]次级联赛厮杀超职业 现超级兵对拆世纪大战
2014/10/30 DOTA
python实现百万答题自动百度搜索答案
2018/01/16 Python
Python中Numpy包的安装与使用方法简明教程
2018/07/03 Python
Python 利用pydub库操作音频文件的方法
2019/01/09 Python
Python基于当前时间批量创建文件
2020/05/07 Python
适合各种场合的美食礼品:Harry & David
2016/08/03 全球购物
瑰珀翠美国官网:Crabtree & Evelyn美国
2016/11/29 全球购物
用JAVA实现一种排序,JAVA类实现序列化的方法(二种)
2014/04/23 面试题
寒假家长评语大全
2014/04/16 职场文书
公司周年庆典策划方案
2014/05/17 职场文书
绿色环保口号
2014/06/12 职场文书
环保口号大全
2014/06/12 职场文书
党员干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
婚前协议书标准版
2014/10/19 职场文书
车辆挂靠协议书
2016/03/23 职场文书
css filter和getUserMedia的联合使用
2022/02/24 HTML / CSS
国际最新研究在陨石中发现DNA主要成分 或由陨石带来地球
2022/04/29 数码科技