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

 更新时间:2018年11月28日 08:58:44   作者:短短的路走走停停  
今天,我们就来用Python实现微信的自动回复功能吧,并且把接收到的消息统一发送到文件助手里面,方便统一查看。感兴趣的朋友跟随小编一起看看吧

 01 前言&&效果展示

相信大家都有忙碌的时候,不可能一直守在微信上及时回复消息。但微信又不能像QQ一样设置自动回复。无妨,今天,我们就来用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实现微信自动回复,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • 浅谈Django Admin的初步使用

    浅谈Django Admin的初步使用

    本文主要介绍了浅谈Django Admin的初步使用 ,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • django创建简单的页面响应实例教程

    django创建简单的页面响应实例教程

    这篇文章主要给大家介绍了关于django如何创建简单的页面响应的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用django具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • python语言中pandas字符串分割str.split()函数

    python语言中pandas字符串分割str.split()函数

    分列在我们日常工作中经常用到,从各种系统中导出的什么订单号、名称、日期很多都是复合组成的,这些列在匹配、合并时没有办法使用,我们经常需要将她们分开,下面这篇文章主要给大家介绍了关于python语言中pandas字符串分割str.split()函数的相关资料,需要的朋友可以参考下
    2022-08-08
  • Python入门教程(二十一)Python的数组

    Python入门教程(二十一)Python的数组

    这篇文章主要介绍了Python入门教程(二十一)Python的数组,数组是一种特殊变量,数组可以在单个名称下保存多个值,我们可以通过引用索引号来访问这些值,需要的朋友可以参考下
    2023-04-04
  • pandas中df.groupby()方法深入讲解

    pandas中df.groupby()方法深入讲解

    在使用pandas进行数据统计分析时遇到了问题,找了很久才找到解决办法,所以下面这篇文章主要给大家介绍了关于pandas中df.groupby()方法的相关资料,需要的朋友可以参考下
    2022-12-12
  • 如何使用Python实现斐波那契数列

    如何使用Python实现斐波那契数列

    这篇文章主要介绍了如何使用Python实现斐波那契数列,斐波那契数列(Fibonacci)最早由印度数学家Gopala提出,而第一个真正研究斐波那契数列的是意大利数学家 Leonardo Fibonacci,需要的朋友可以参考下
    2019-07-07
  • Httprunner简介、安装及基本使用教程

    Httprunner简介、安装及基本使用教程

    httprunner是一款面向 HTTP(S) 协议的通用测试框架。只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求,本文给大家介绍Httprunner安装使用教程,感兴趣的朋友一起看看吧
    2022-02-02
  • Python调用钉钉自定义机器人的实现

    Python调用钉钉自定义机器人的实现

    这篇文章主要介绍了Python调用钉钉自定义机器人的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • python如何重载模块实例解析

    python如何重载模块实例解析

    这篇文章主要介绍了python如何重载模块实例解析,涉及模块的概念,载入和重载的实例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • python子类在多继承中使用MRO机制原理

    python子类在多继承中使用MRO机制原理

    这篇文章主要为大家介绍了python子类在多继承中使用MRO机制原理,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03

最新评论