今天做了一个小聊天机器人,效果如图,感觉不错就来分享记录一下。
注册图灵机器人
在图灵机器人官网上注册一个账号,并添加一个机器人,获取apikey
备用,apikey
是外界和机器人交流的唯一接口,注意不要泄露给别人。
通过apikey
获取答复
该过程的实质是一个post,请求,也就是携带信息向某个url进行post请求。
携带的信息是两个键值对,容易猜到一个是apikey
,一个是text
,也就是你要发出去的消息,而请求的url由图灵官方提供,为http://www.tuling123.com/openapi/api
这样思路就明了了,下面是代码实现。
代码实现
python通过requests
实现
1 2 3 4 5 6 7 8
| import requests #导入库 s = { "key":"your apikey", "info":"你多大了" } r = requests.post("http://www.tuling123.com/openapi/api",data=s)#post请求 r.encoding = r.apparent_encoding print(r.text)
|
返回的r.text
是json
信息,进行简单的字符串提取就ok
android通过Okhttp
实现
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| private void getContent(String s) { new Thread(() -> { try { OkHttpClient client = new OkHttpClient(); RequestBody body = new FormBody.Builder() .add("key",key) .add("info",s) .build(); Request request = new Request.Builder() .url("http://www.tuling123.com/openapi/api") .post(body) .build(); Response response = client.newCall(request).execute(); String s1 = response.body().string();#get the content Log.d("s",s1 ); }catch (Exception e){ e.printStackTrace(); } } ).start(); }
|
整个app的代码可参考Chat