微信聊天机器人自动应答

使用微信作为主要的社交媒体很久了,突然想到是否可以实现不在线的时候,有机器人可以对朋友的信息进行应答。于是,在网上搜索相关信息,运用最近刚开始接触的python编程,采用python基本的 NLP (自然语言处理)包,终于搞定了微信聊天的自动回复功能。首先,需要安配置好python环境。再次,在windows下安装ichat包和request包,最后在图灵网站(http://www.tuling123.com/)上注册key,将图灵机器人的KEY替代如下代码“KEY = ‘xxxxxxxxxxxxxx’中的xxxxxxxxx”这样准备工作就绪。运行如下代码,代码来源于网上,亲测有效,服务器太小,不便于挂图了。

# -*- coding=utf-8 -*-
import requests
import itchat
import random
KEY = 'xxxxxxxxxxxxxx'
def get_response(msg):
    apiUrl = 'http://www.tuling123.com/openapi/api'
    data = {
        'key'    : KEY,
        'info'   : msg,
        'userid' : 'wechat-robot',
    }
    try:
        r = requests.post(apiUrl, data=data).json()
        return r.get('text')
    except:
        return
@itchat.msg_register(itchat.content.TEXT)
def tuling_reply(msg):
    defaultReply = 'I received: ' + msg['Text']
    robots=['——By机器人小张','——By机器人小王','——By反正不是本人']
    reply = get_response(msg['Text'])+random.choice(robots)
    return reply or defaultReply
itchat.auto_login(enableCmdQR=True)
itchat.run()

运行以上代码,出现二维码,用微信扫码,实现网页端微信登录,就实现了个人微信的账号的聊天自动回复功能,这时是图灵的语音聊天机器人在与来访者进行对话,大家可以测试下图灵机器人对自然语言的理解、应答灵活程度了。

作者: 远景顾问

Business consultant, focus on improving people, process and performance.

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据