python實現接入圖靈機器人


圖靈機器人是一個免費的支持簡單對話的機器人。可以到官網注冊添加機器人,每個賬號最多可以有5個機器人,每個機器人每天可以支持調用api對話一千次。

下面給出調用圖靈機器人的示列代碼:

import json
import urllib.request
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群和用戶實現精准聊天。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM