Python实战 | 调用API写一个图灵机器人

先注册一个图灵机器人

官网:http://www.turingapi.com

注册账号后点击创建机器人,根据需要填写一下应用场景

然后会看到获得的apikey

Python实战 | 调用API写一个图灵机器人_第1张图片

放进Pycharm里简单配置一下:

import requests

url = "http://openapi.tuling123.com/openapi/api/v2"
req = {
    "reqType": 0,  # 输入类型 0-文本, 1-图片, 2-音频
    "perception":  # 输入信息
    {
        "inputText":  # 输入的文本信息
        {
            "text": "你好"
        },
    },
    "userInfo":  #用户参数
    {
        "apiKey": "b10f8a4da2994fedb44b6cedfbc27b4e",  # 改为自己申请的key
        "userId": "Xylon"  # 用户唯一标识(随便填, 非密钥)
    }
}
result = requests.post(url, json = req)
content = (result.content).decode('utf-8')
print(content)

运行一下看看返回信息 (如果返回了错误代码4001(加密方式错误),说明你把密钥选项打开了,关闭即可)

Python实战 | 调用API写一个图灵机器人_第2张图片

返回的是json格式的文本信息,我们要提取其中机器人返回的对话,需对json进行解析

顺便把访问api的过程封装成函数

完整代码:

import json
import requests

url = "http://openapi.tuling123.com/openapi/api/v2"
def robot(data):
    req = {
        "reqType": 0,  # 输入类型 0-文本, 1-图片, 2-音频
        "perception":  # 输入信息
        {
            "inputText":  # 文本信息
            {
                "text": data
            },
        },
        "userInfo":  #用户参数
        {
            "apiKey": "b10f8a4da2994fedb44b6cedfbc27b4e",  # 改为自己申请的key
            "userId": "Xylon"  # 用户唯一标识(随便填, 非密钥)
        }
    }
    result = requests.post(url, json = req)
    content = (result.content).decode('utf-8')
    str = json.load(content)
    print('bot:',str['results'])

while True:
    data = input('我:')
    robot(data)

 跟机器人过几招

Python实战 | 调用API写一个图灵机器人_第3张图片

是个有眼光的机器人

 

API开发文档地址:https://www.kancloud.cn/turing/www-tuling123-com/718227

你可能感兴趣的:(Python,python,api,图灵机器人)