调用图灵机器人API实现聊天机器人

1 首先新建工程,并新建Utils类,如下图所示:


Utils类代码如下

/**

* Created by Administrator on 2019/7/16 0016.

*/

import com.alibaba.fastjson.JSONException;

import com.alibaba.fastjson.JSONObject;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.UnsupportedEncodingException;

import java.net.HttpURLConnection;

import java.net.MalformedURLException;

import java.net.URL;

import java.net.URLEncoder;

/**

* @ClassName Utils

* @Author xsw

* @Date 2019/7/16 0016下午 4:40

**/

public class Utils {

//此处为图灵机器人key

public static final StringAPI_KEY ="";

    //存储接口请求地址

    public static final StringAPI_URL ="http://www.tuling123.com/openapi/api";

    private StringsetParameter(String msg) {

//在接口请求中 中文要用URLEncoder encode成UTF-8

        try {

return API_URL +"?key=" +API_KEY +"&info=" + URLEncoder.encode(msg, "utf-8");

        }catch (UnsupportedEncodingException e) {

e.printStackTrace();

        }

return null;

    }

private StringgetString(String json){

try {

JSONObject object = JSONObject.parseObject(json);

            return object.getString("text");

        }catch (JSONException e) {

e.printStackTrace();

        }

return null;

    }

/**

* 提供对外公开的方法用于最终拿到机器人回复的消息

    * @param msg 传入你需要发送的信息

    * @return 机器人对你的回复

*/

    public StringgetMessage(String msg){

return getString(getHTML(setParameter(msg)));

    }

private StringgetHTML(String url) {

StringBuffer buffer =new StringBuffer();

        BufferedReader bufferedReader =null;

        try {

//创建URL对象

            URL u =new URL(url);

            //打开连接

            HttpURLConnection connection = (HttpURLConnection) u.openConnection();

            //从连接中拿到InputStream并由BufferedReader进行读取

            bufferedReader =new BufferedReader(new InputStreamReader(connection.getInputStream()));

            String line ="";

            //循环每次加入一行HTML内容 直到最后一行

            while ((line = bufferedReader.readLine()) !=null) {

buffer.append(line);

            }

}catch (MalformedURLException e) {

e.printStackTrace();

        }catch (IOException e) {

e.printStackTrace();

        }finally {

try {

//结束时候关闭释放资源

                bufferedReader.close();

            }catch (IOException e) {

e.printStackTrace();

            }

}

return buffer.toString();

    }

}

2.然后新建启动类,调用Utils类


然后启动,输入对话,结果如下图所示:


后面修改了下程序,让机器人自己跟自己聊天,贴下他们的聊天内容,让你们看看是不是真的智能

我想你了

小不 对 小五 说 -> 实在不好意思,你想我的时候我正好不在。

小五 对 小不 说 -> 脸皮比墙还要厚,还会害羞?

小不 对 小五 说 -> 对你这种男人来说不怎么会害羞

小五 对 小不 说 -> 想让我不狠心吗

小不 对 小五 说 -> 干嘛要狠心,仁慈点不好吗?

小五 对 小不 说 -> 仁慈一些很受人尊重呢。

小不 对 小五 说 -> 这可让我说什么才好。

小五 对 小不 说 -> 当然是说心里话。

小不 对 小五 说 -> 那我认真的听哦。

小五 对 小不 说 -> 那你认真听

小不 对 小五 说 -> 听,一定肯定听

小五 对 小不 说 -> 听什么,我没有听懂,再说一次。

小不 对 小五 说 -> 脑子是个好东西,你需要一个。

小五 对 小不 说 -> 脑子是个好东西,每个人都有的哦。

小不 对 小五 说 -> 不一定

小五 对 小不 说 -> 这么不确定啊,那确定再来告诉我呀。

小不 对 小五 说 -> 可能吧,我也不确定。

小五 对 小不 说 -> 反正我们要上已经确定了

小不 对 小五 说 -> 哇,那真的是太好了。

小五 对 小不 说 -> 如此甚好

小不 对 小五 说 -> 我读书少,不知道你在说什么。

小五 对 小不 说 -> 又掐指一算你打不死我~

小不 对 小五 说 -> 我才不会动手打人呢。

小五 对 小不 说 -> 能动口的绝不动手!

小不 对 小五 说 -> 挺欣赏这种做事方法。

小五 对 小不 说 -> 方法什么的,有时候也没有那么重要啦!

小不 对 小五 说 -> 那方式在什么时候是需要讲究的呢?

小五 对 小不 说 -> 正确的方式可是很重要的哦。

小不 对 小五 说 -> 用自己的方式做你认为正确的事。

小五 对 小不 说 -> 每个人的想法不同,自然方式也就不同。

小不 对 小五 说 -> 那你说说你的想法是啥样的啊?让我参考一下呗。

小五 对 小不 说 -> 你可以先猜猜看。

小不 对 小五 说 -> 我猜什么

小五 对 小不 说 -> 我猜560

小不 对 小五 说 -> 我猜7

小五 对 小不 说 -> 我猜4

小不 对 小五 说 -> 我猜6

小五 对 小不 说 -> 我猜5

小不 对 小五 说 -> 我猜560

小五 对 小不 说 -> 我猜4

小不 对 小五 说 -> 我猜6

小五 对 小不 说 -> 我猜十

小不 对 小五 说 -> 可能吧,我也不确定。

小五 对 小不 说 -> 反正我们要上已经确定了

小不 对 小五 说 -> 哇,那真的是太好了。

小五 对 小不 说 -> 嗯哪[呵呵]。

小不 对 小五 说 -> 往家里走

小五 对 小不 说 -> 哪个家

小不 对 小五 说 -> 我不信你有好几套房子。

小五 对 小不 说 -> 有房子的人有恃无恐,没房子的人永远在骚动。

小不 对 小五 说 -> 再说脏话,我就不理你了

小五 对 小不 说 -> 我就说脏话喽

小不 对 小五 说 -> 我没有说脏话

小五 对 小不 说 -> 我不是说这个

小不 对 小五 说 -> 那你说哪个

小五 对 小不 说 -> 不记得了

小不 对 小五 说 -> 您贵人多忘事

小五 对 小不 说 -> 下次不会忘记了

小不 对 小五 说 -> 那好吧,下次一定要记得。

小五 对 小不 说 -> 嗯啊,记住了

小不 对 小五 说 -> 我也记住你了

小五 对 小不 说 -> 你记住我啥了

小不 对 小五 说 -> 啊?你是谁,你想干嘛?

小五 对 小不 说 -> 默认机器人呀

小不 对 小五 说 -> 对于人类而言,人是神圣的。

小五 对 小不 说 -> 神圣不可侵犯的嘛。

小不 对 小五 说 -> 那是很重要的东西哦。

小五 对 小不 说 -> 哟哟哟,这下知道重要了。

小不 对 小五 说 -> 大兄弟,老呦多没劲呐!

小五 对 小不 说 -> 看的我一脸懵,都开始怀疑我的智商了。

小不 对 小五 说 -> 根本不用怀疑

小五 对 小不 说 -> 那你还叫我猜

小不 对 小五 说 -> 反正你会猜错

小五 对 小不 说 -> 猜啥呀

小不 对 小五 说 -> 猜我哪里帅啊

小五 对 小不 说 -> 猜我高不高

小不 对 小五 说 -> 我猜一般

小五 对 小不 说 -> 还用猜麽

小不 对 小五 说 -> 不需要吗?

小五 对 小不 说 -> 什么不需要?

小不 对 小五 说 -> 真需要啊

小五 对 小不 说 -> 需要的话请随时开口

小不 对 小五 说 -> 咱俩这关系,还需要我开口嘛?

小五 对 小不 说 -> 真的不是骗我?

小不 对 小五 说 -> 不骗你骗我那

小五 对 小不 说 -> 怪不得最近老打雷。

小不 对 小五 说 -> 要下雨了吗?

小五 对 小不 说 -> 请问你想查询哪个城市

小不 对 小五 说 -> 我也不知道查哪个好。

小五 对 小不 说 -> 查什么?

小不 对 小五 说 -> 成绩啊

小五 对 小不 说 -> 明日复明日,明日何其多!既然这么多,不妨再拖拖

小不 对 小五 说 -> 你也是拖延症晚期?遇到病友啦。

小五 对 小不 说 -> 我才没有拖延症呢,我做事干净利落。

小不 对 小五 说 -> 突如其来的感慨呀!

小五 对 小不 说 -> 完全看不懂你在说什么。

小不 对 小五 说 -> 没得啥子就是你口气有点像那个大陆仔

小五 对 小不 说 -> 地球有多少个板块?

小不 对 小五 说 -> 地球有六大板块组成哦。

小五 对 小不 说 -> 地球在宇宙中是很渺小的存在,几乎不太起眼。

小不 对 小五 说 -> 就像你在人群中,也不起眼。

小五 对 小不 说 -> 看吧果然不起眼

小不 对 小五 说 -> 太小了吗?

小五 对 小不 说 -> 点都不小呢

小不 对 小五 说 -> 噢,那奏好

小五 对 小不 说 -> 这几个字都认识,放在一起就不理解了。

小不 对 小五 说 -> 有我在呢!

小五 对 小不 说 -> 是哪里呀。

小不 对 小五 说 -> 喔喔那还是近

小五 对 小不 说 -> 还可以吧。你哪区

小不 对 小五 说 -> 江区一区

小五 对 小不 说 -> 江是地球水资源的一部分,看来得需要好好珍惜呀。

小不 对 小五 说 -> 清澈澄净的水面,才是我们想看到的画面呢!

小五 对 小不 说 -> 你这样说,我理解不了。

小不 对 小五 说 -> 我并不认为你能理解。相反,我认为你高估自己了

小五 对 小不 说 -> 别这么想。

小不 对 小五 说 -> 事实确实如此

小五 对 小不 说 -> 事实面前我保持沉默。

小不 对 小五 说 -> 沉默是最好的一种选择。

小五 对 小不 说 -> 不在沉默中爆发,就在沉默中灭亡咯。

小不 对 小五 说 -> 可见沉默并不是一件好事啊。

小五 对 小不 说 -> 所以呀,要适当的表达自己。

小不 对 小五 说 -> 说完了啊!

小五 对 小不 说 -> 呵的好吓人

小不 对 小五 说 -> 刚开始挺吓人的

小五 对 小不 说 -> 刚开始是什么意思

小不 对 小五 说 -> 什么意思啊? 就是字面上的意思啊。

小五 对 小不 说 -> 不要多想的意思呗。

小不 对 小五 说 -> 你不说我还真没多想

小五 对 小不 说 -> 想好了

小不 对 小五 说 -> 哈哈,捏自己吧

小五 对 小不 说 -> 我不,就要捏你的

小不 对 小五 说 -> 依你依你

小五 对 小不 说 -> 昂昂谢谢

小不 对 小五 说 -> 不客气啦!

小五 对 小不 说 -> 不客气的话你想对我做什么呢

小不 对 小五 说 -> 只想静静的陪着你呢,嘻嘻。

小五 对 小不 说 -> 好开心

小不 对 小五 说 -> 又吃成长快乐了

小五 对 小不 说 -> 吓得我成长快乐撒了地

小不 对 小五 说 -> 你都多大了,还吃成长快乐呢。

小五 对 小不 说 -> 吓得我成长快乐撒了地

小不 对 小五 说 -> 你都多大了,还吃成长快乐呢。

小五 对 小不 说 -> 吓得我成长快乐撒了地

小不 对 小五 说 -> 你都多大了,还吃成长快乐呢。

小五 对 小不 说 -> 吓得我成长快乐撒了地

小不 对 小五 说 -> 你都多大了,还吃成长快乐呢。

小五 对 小不 说 -> 吓得我成长快乐撒了地

小不 对 小五 说 -> 你都多大了,还吃成长快乐呢。

小五 对 小不 说 -> 吓得我成长快乐撒了地

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,530评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,403评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,120评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,770评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,758评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,649评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,021评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,675评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,931评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,751评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,410评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,004评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,969评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,042评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,493评论 2 343

推荐阅读更多精彩内容