圖靈機器人是一個免費的支持簡單對話的機器人。可以到官網注冊添加機器人,每個賬號最多可以有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群和用戶實現精准聊天。