又是一年新春时,相信大家都会收到来自亲朋好友的祝福轰炸。在这种时候,不回复显得有点不近人情,但是一个个手打回复又会让人觉得手太累。尤其是大部分好友都是复制群发的消息,虽说“群发的短信我不回”也无伤大雅,但是有强迫症的我看着一个个红点不打开我看春晚都没心情(虽然我不爱看春晚)。于是乎我静静的思考了一下解决办法——拜年微信自动回复。
思路:一是利用Python实现自动回复,包括好友消息和群消息;
二是实现智能的回复,可以更加好玩,收到我们自动回复消息的好友也不会觉得我们是在敷衍。
环境:1.Python3.5
2.itchat(可以实现微信自动回复的Python接口)
3.图灵机器人API(利用图灵的知识库实现有趣的自动回复)
方法:
一,首先实现微信的自动回复,itchat非常简单,如果不去过分追求它的原理的话,使用起来炒鸡方便,可以参照https://pypi.python.org/pypi/itchat/1.0.11这里的方法,至于更深一步的探讨,可以看这里——老蔡的博客http://lcbk.net/6201.html
安装好itchat之后,就可以直接写代码了。
下面是我实现的代码,十来行左右就可以实现自动回复了
import itchat
@itchat.msg_register('Text',isGroupChat = True)
def text_reply(msg):
return ‘新年快乐!鸡年大吉!(回复群消息)’
@itchat.msg_register('Text')
def text_reply(msg):
return ‘新年快乐!鸡年大吉!(回复好友消息)’
itchat.auto_login(hotReload=True)
itchat.run()
上面几行代码就已经可以实现简单地自动回复了!是不是很简单呢!
不过这样太机械化了,总是感觉不那么亲切,下面我们就来一点人性化的改良。
二,利用图灵机器人API实现自动回复。
图灵机器人可以在这里http://www.tuling123.com/体验一下
看他的回答挺智能吧~~
怎么把它和刚才的itchat结合起来了,不用愁,我们用的可是万能胶的Python语言啊,轻轻松松实现功能的叠加。
在图灵机器人网址里面创建机器人,选择自定义,
即可得到API如图
具体利用Python实现的代码如下:
把它保存为如下的文件结构
把两个代码组合起来,就是下面完整的代码了
import itchat
import Wechat.tulingrobot
#这里为了便于实现,分别注册了两个消息类型,第一个对应于自动回复群消息
@itchat.msg_register('Text',isGroupChat = True)
def text_reply(msg):
text =Wechat.tulingrobot.get_response(msg['Text'])
return text
#这一个对应于自动回复好友发过来的消息
@itchat.msg_register('Text')
def text_reply(msg):
text =Wechat.tulingrobot.get_response(msg['Text'])
return text
itchat.auto_login(hotReload=True)
itchat.run()
简单吧,二三十行代码就把这个功能实现了。这样我们可以专心的看电视了。今晚可是各个卫视的春晚~