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 20 Python
Python利用ansible分发处理任务
Aug 04 Python
python抓取并保存html页面时乱码问题的解决方法
Jul 01 Python
python使用标准库根据进程名如何获取进程的pid详解
Oct 31 Python
Django中反向生成models.py的实例讲解
May 30 Python
python+selenium打印当前页面的titl和url方法
Jun 22 Python
Django添加favicon.ico图标的示例代码
Aug 07 Python
Pycharm debug调试时带参数过程解析
Feb 03 Python
基于Python获取docx/doc文件内容代码解析
Feb 17 Python
Pycharm配置PyQt5环境的教程
Apr 02 Python
使用Matplotlib绘制不同颜色的带箭头的线实例
Apr 17 Python
Keras多线程机制与flask多线程冲突的解决方案
May 28 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 图像尺寸调整代码
2010/05/26 PHP
php异常:Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE  eval()'d code error
2011/05/19 PHP
PHP exif扩展方法开启详解
2014/07/28 PHP
ECSHOP完美解决Deprecated: preg_replace()报错的问题
2016/05/17 PHP
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
2016/12/14 PHP
利用php-cli和任务计划实现订单同步功能的方法
2017/05/03 PHP
PHP实现微信红包金额拆分试玩的算法示例
2018/04/07 PHP
Laravel6.18.19如何优雅的切换发件账户
2020/06/14 PHP
js 图片缩放(按比例)控制代码
2009/05/27 Javascript
可以将word转成html的js代码
2010/04/11 Javascript
js/jquery去掉空格,回车,换行示例代码
2013/11/05 Javascript
jquery实现手机发送验证码的倒计时代码
2014/02/12 Javascript
JS判断客服QQ号在线还是离线状态的方法
2015/01/13 Javascript
关于js里的this关键字的理解
2015/08/17 Javascript
JQuery EasyUI的使用
2016/02/24 Javascript
javascript判断回文数详解及实现代码
2017/02/03 Javascript
vuejs开发组件分享之H5图片上传、压缩及拍照旋转的问题处理
2017/03/06 Javascript
vue项目总结之文件夹结构配置详解
2017/12/13 Javascript
js保留两位小数方法总结
2018/01/31 Javascript
在Vue 中使用Typescript的示例代码
2018/09/10 Javascript
搭建一个Koa后端项目脚手架的方法步骤
2019/05/30 Javascript
Python 解决中文写入Excel时抛异常的问题
2018/05/03 Python
windows下python和pip安装教程
2018/05/25 Python
Anaconda 离线安装 python 包的操作方法
2018/06/11 Python
python3图片文件批量重命名处理
2019/10/31 Python
pandas 像SQL一样使用WHERE IN查询条件说明
2020/06/05 Python
Python如何对齐字符串
2020/07/30 Python
地球上最先进的胡子和头发修剪器:Bevel
2018/01/23 全球购物
丝绸和人造花卉、植物和树木:Nearly Natural
2018/11/28 全球购物
高中课前三分钟演讲稿
2014/09/13 职场文书
学校政风行风整改方案
2014/10/25 职场文书
入党函调证明材料
2015/06/19 职场文书
2015秋季开学典礼新闻稿
2015/07/17 职场文书
pytorch 实现变分自动编码器的操作
2021/05/24 Python
未发现nvidia显卡怎么办?Win11系统中未检测到nvidia显卡解决教程
2022/04/08 数码科技
oracle delete误删除表数据后如何恢复
2022/06/28 Oracle