python开发微信机器人_python实现微信机器人: AI智能回复

python实现微信机器人: AI智能回复

发布时间:2018-05-13 16:43,

浏览次数:527

, 标签:

python

AI

上一篇介绍了微信自动回复的方法, 不过只能回复预先设定的语句。 目前市面上有不少智能聊天的系统,接入这些系统就能实现一个简易的智能聊天机器人。

前期准备:

在网站http://www.tuling123.com/注册账号,我们能获得一个token,一个免费的token每天的调用上限大概是1000次,如果仅仅是自己测试使用的话,应该是够用了。

实现:

在上一篇的代码基础之上, 我们修改如下:

def reply_self(msg): url_api = 'http://www.tuling123.com/openapi/api' data = {

'key': TULING_TOKEN, 'info': msg.text, # 收到消息的文字内容 } s = requests.post(url_api,

data=json.dumps(data)) info = json.loads(s.text) if info['code'] == 100000:

print info['text'] # 查看回复消息的内容,可省略 msg.reply(info['text']) # 回复消息

这个TULING_TOKEN就是注册获得的token。这样我们就获得了一个能够自动回复的机器人。 但是这边仍旧会存在一个问题,

就是机器人无法根据上下文给出回复,为什么呢, 因为这个接口无法将多个不同的请求关联起来。如何将不同的请求关联起来呢,

就是在每次发送文字内容的时候同时附上一个用户的id,机器人就能理解这些内容是来自同一个发送方。

我们需要将发送的内容改成

data = { 'key': TULING_TOKEN, 'info': msg.text, # 收到消息的文字内容 'userid':

msg.sender.puid, # 使用群聊中发送者的 puid 作为 userid 传送给图灵接口, 如果是私聊可以使用 msg.sender.puid }

不过这个还需要在登录之后打开puid的这个功能

bot.enable_puid() # puid 需要手动开启

另外备注一下, 在测试的时候,为了防止对所有的用户都自动回复,可以指定自动回复的接受人:

my_friend = bot.friends().search(u'xxxx')[0]

然后在注册自动回复的时候,指定只有该用户能收到

@bot.register(my_friend, TEXT)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值