前言
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。
PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资料以及群交流解答点击即可加入
图灵机器人是一个免费的支持简单对话的机器人。可以到官网注册添加机器人,每个账号最多可以有5个机器人,每个机器人每天可以支持调用api对话一千次。
下面给出调用图灵机器人的示列代码:
import json
import urllib.request
'''
遇到不懂的问题?Python学习交流群:1136201545满足你的需求,资料都已经上传群文件,可以自行下载!
'''
tuling='机器人apikey'
api_url = "http://openapi.tuling123.com/openapi/api/v2"
def get_message(message,userid):
req = {
"perception":
{
"inputText":
{
"text": message
},
"selfInfo":
{
"location":
{
"city": "深圳",
"province": "广州",
"street": "XXX"
}
}
},
"userInfo":
{
"apiKey": tuling,
"userId": userid
}
}
req = json.dumps(req).encode('utf8')
http_post = urllib.request.Request(api_url, data=req, headers={'content-type': 'application/json'})
response = urllib.request.urlopen(http_post)
response_str = response.read().decode('utf8')
response_dic = json.loads(response_str)
results_text = response_dic['results'][0]['values']['text']
return results_text
函数get_message传入一个字符串和一个用户标识id,用户标识id是一个自定义的字符串,最大32位,用户标识id用于标识对话的连续性,同样的用户标识id的对话会将当前对话和前面的对话连续起来,使每次对话都不是从新开始的独立对话。
可以使用
response_dic = json.loads(response_str)
intent_code = response_dic['intent']['code']
获得一个返回代码,通过官方开发文档判断这个返回代码获得一些当前返回消息的类别,比如机器人apikey调用次数已用完等信息。可以结合上篇接入qqbot实现qq机器人自动对话,准备多个apikey,在一个apikey调用次数用完使自动切换下一个apikey,并且可以结合qqbot的uin等唯一标识qq群和用户实现精准聊天。