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实现查找系统盘中需要找的字符
Jul 14 Python
python实现向微信用户发送每日一句 python实现微信聊天机器人
Mar 27 Python
详解Matplotlib绘图之属性设置
Aug 23 Python
python绘制随机网络图形示例
Nov 21 Python
浅析python,PyCharm,Anaconda三者之间的关系
Nov 27 Python
Python爬虫库requests获取响应内容、响应状态码、响应头
Jan 25 Python
利用python中集合的唯一性实现去重
Feb 11 Python
Python嵌入C/C++进行开发详解
Jun 09 Python
详解python UDP 编程
Aug 24 Python
Pycharm如何自动生成头文件注释
Nov 14 Python
python 统计代码耗时的几种方法分享
Apr 02 Python
如何使用Python对NetCDF数据做空间相关分析
Apr 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
环境会对咖啡种植有什么影响
2021/03/03 咖啡文化
深入PHP数据加密详解
2013/06/18 PHP
php使用数组填充下拉列表框的方法
2015/03/31 PHP
PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
2016/06/13 PHP
用dom+xhtml+css制作的一个相册效果代码打包下载
2008/01/24 Javascript
JavaScript操作XML实例代码(获取新闻标题并分页,并分页)
2010/05/25 Javascript
ASP.NET jQuery 实例4(复制TextBox的文本到本地剪贴板上)
2012/01/13 Javascript
jquery实现简单的拖拽效果实例兼容所有主流浏览器(优化篇)
2013/06/28 Javascript
JS实现根据当前文字选择返回被选中的文字
2014/05/21 Javascript
javascript将浮点数转换成整数的三个方法
2014/06/23 Javascript
对Js OOP编程 创建对象的一些全面理解
2016/07/26 Javascript
详解js数组的完全随机排列算法
2016/12/16 Javascript
浅谈Angular.js中使用$watch监听模型变化
2017/01/10 Javascript
微信小程序学习笔记之本地数据缓存功能详解
2019/03/29 Javascript
解决Vue 刷新页面导航显示高亮位置不对问题
2019/12/25 Javascript
如何基于filter实现网站整体变灰功能
2020/04/17 Javascript
[06:25]第二届DOTA2亚洲邀请赛主赛事第二天比赛集锦.mp4
2017/04/03 DOTA
Python常见文件操作的函数示例代码
2011/11/15 Python
Django卸载之后重新安装的方法
2017/03/15 Python
Numpy之文件存取的示例代码
2018/08/03 Python
python 使用 requests 模块发送http请求 的方法
2018/12/09 Python
python判断所输入的任意一个正整数是否为素数的两种方法
2019/06/27 Python
python selenium实现发送带附件的邮件代码实例
2019/12/10 Python
深入浅析python变量加逗号,的含义
2020/02/22 Python
Python3实现个位数字和十位数字对调, 其乘积不变
2020/05/03 Python
django实现日志按日期分割
2020/05/21 Python
Python爬虫爬取博客实现可视化过程解析
2020/06/29 Python
OpenCV4.1.0+VS2017环境配置的方法步骤
2020/07/09 Python
如何基于python实现年会抽奖工具
2020/10/20 Python
Python+OpenCV图像处理—— 色彩空间转换
2020/10/22 Python
canvas画布实现手写签名效果的示例代码
2019/04/23 HTML / CSS
入党申请自荐书范文
2014/02/11 职场文书
高中美术教学反思
2016/02/17 职场文书
Python自动化之批量处理工作簿和工作表
2021/06/03 Python
基于Python实现流星雨效果的绘制
2022/03/18 Python
win10输入法不见了只能打出字母怎么解决?
2022/08/05 数码科技