`
zzc1684
  • 浏览: 1223081 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

小黄鸡接口调用

    博客分类:
  • Java
阅读更多
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;

/**
 * 小黄鸡机器人
 */
public class SimsimiTools {

    public static void main(String[] args) {
        try {
        	BufferedReader strin=new BufferedReader(new InputStreamReader(System.in));  
            System.out.print("请输入一个字符串:");  
            while(true) {
            	String str = strin.readLine();  
            System.out.println(getSimsimiContentByNiuren(str));
            }
            
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 小黄鸡机器人
     *
     * @author ghma
     */
    public static String getSimsimiContentByNiuren(String params) {
        StringBuffer bufferRes = new StringBuffer();
        try {
            URL realUrl = new URL(
                    "http://www.niurenqushi.com/app/simsimi/ajax.aspx");
            HttpURLConnection conn = (HttpURLConnection) realUrl
                    .openConnection();
            // 连接超时
            conn.setConnectTimeout(25000);
            // 读取超时 --服务器响应比较慢,增大时间
            conn.setReadTimeout(25000);

            HttpURLConnection.setFollowRedirects(true);
            // 请求方式
            conn.setRequestMethod("POST");
            conn.setDoOutput(true);
            conn.setDoInput(true);
            conn.setRequestProperty("User-Agent",
                    "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0");
            conn.setRequestProperty("Accept", "*/*");
            conn.setRequestProperty("Referer",
                    "http://www.niurenqushi.com/app/simsimi/");
            conn.connect();
            // 获取URLConnection对象对应的输出流
            OutputStreamWriter out = new OutputStreamWriter(
                    conn.getOutputStream());
            // 发送请求参数
            out.write("txt=" + URLEncoder.encode(params, "UTF-8"));
            out.flush();
            out.close();

            InputStream in = conn.getInputStream();
            BufferedReader read = new BufferedReader(new InputStreamReader(in,
                    "UTF-8"));
            String valueString = null;
            while ((valueString = read.readLine()) != null) {
                bufferRes.append(valueString);
            }
            in.close();
            if (conn != null) {
                // 关闭连接
                conn.disconnect();
            }
        } catch (Exception e) {
            System.out.println("小黄鸡接口调用出错!" + e.getMessage());
    //        return XiaoDouMachine.getXiaoDouMsg(params);
        }

        if (bufferRes.toString().equals("干嘛")) {
    //        return XiaoDouMachine.getXiaoDouMsg(params);
        }

        String finalRes = removeNews(bufferRes.toString());
        System.out.println("小黄鸡机器人回复:" + finalRes);
        return finalRes;
    }

    /**
     * 屏蔽当前接口中的广告
     *
     * @return
     */
    public static String removeNews(String sendMsgs) {
        // 去除广告
        if (sendMsgs.indexOf("simsimi2") != -1) {
            sendMsgs = "偶是毛小驴,女,还木有男友,欢迎南华学子调戏   O(∩_∩)O";
        } else if (sendMsgs.indexOf("Database") != -1
                || sendMsgs.indexOf("Failed") != -1) {
            int random = (int) (Math.random() * 5);
            switch (random) {
            case 1:
                sendMsgs = "嗯";
                break;
            case 2:
                sendMsgs = "聊天其它的吧";
                break;
            case 3:
                sendMsgs = "嗯哼";
                break;
            case 4:
                sendMsgs = "哎呀";
                break;
            case 5:
                sendMsgs = "额";
                break;
            default:
                sendMsgs = "嗯";
                break;
            }
        } else if (sendMsgs.indexOf("Unauthorized access") != -1) {
            sendMsgs = "我怎么听不懂你说的什么意思呀[大哭]。咱们能换个话题吗!";
        } else if (sendMsgs.indexOf("你可以教我回答") != -1) {
            sendMsgs = "好吧";
        }
        // 替换部分内容
        sendMsgs = sendMsgs.replaceAll("傻逼", "sb");
        sendMsgs = sendMsgs.replaceAll("小九", "毛小驴");
        // sendMsgs = sendMsgs.replaceAll("小豆", "小贱贱");
        sendMsgs = sendMsgs
                .replaceAll(
                        "小豆机器人网页版地址:http://xiao.douqq.com QQ个性网http://www.xiugexing.com",
                        "伦家不懂官人的话了啦~");
        sendMsgs = sendMsgs.replaceAll("小豆", "毛小驴");
        sendMsgs = sendMsgs.replaceAll("人家", "伦家");
        sendMsgs = sendMsgs.replaceAll("林晨爱你QQ个性网http://www.xiugexing.com",
                "伦家不懂官人的话了啦~");
        return sendMsgs;
    }
}

 

分享到:
评论

相关推荐

    小黄鸡接口PHP多功能版

    小黄鸡接口支持JSON、Array和TXT三种数据格式,这是为了让不同的客户端或应用场景能够方便地调用。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。...

    python调用小黄鸡代码(requests调用)

    从网页上扒下来的小黄鸡智能聊天的接口,然后写了demo,调用总共也就几行代码,好吧,可以作为想要在python程序内加入小黄鸡的接口样例,我在微信平台测试过了,效果拔群,由于是扒下来的接口,请自行斟酌使用。

    小黄鸡php接口加强版

    从"小黄鸡"的名称来看,这个工具可能带有一定趣味性,让开发过程更为轻松。而"psp接口"可能是指个人系统提供商(Personal System/Professional)接口,或者是某种特定的API接口标准。 在使用"小黄鸡php接口加强版...

    Python写的QQ空间小黄鸡.zip

    【标题】"Python写的QQ空间小黄鸡"项目是一个基于Python技术实现的互动聊天机器人,主要功能是在QQ空间中模拟用户与"小黄鸡"的对话,为用户提供趣味性、娱乐性的聊天体验。这个项目已经经过导师的指导,并在期末大...

    php版小黄鸡simsimi聊天机器人接口分享

    小黄鸡SimSimi是一个人工智能驱动的聊天机器人,能够与用户进行生动的对话。本次分享主要针对的是PHP开发者,提供了如何在PHP代码中实现调用SimSimi接口的示例代码,以便开发者们可以将这一功能集成到自己的应用中。...

    qq智能回复机器人

    运行后,机器人将会连接到QQ服务器并开始监听消息,当收到消息时,它将通过小黄鸡接口生成回复并自动发送。 总的来说,QQ智能回复机器人是Java编程和AI技术结合的实例,它展示了如何利用现有的聊天机器人服务来扩展...

    易语言小黄鸡网络问答源码-易语言

    【易语言小黄鸡网络问答源码】是一个基于易语言编程环境开发的网络问答系统源代码,主要用于学习和研究易语言在网络通信领域的应用。易语言是中国本土开发的一种面向对象的编程语言,以其简明易懂的语法设计,使得...

    易语言-易语言小黄鸡网络问答

    3. 发送请求:调用API函数,将请求发送到小黄鸡网络问答平台的服务器。 4. 接收响应:等待服务器的响应,这可能包括问题的答案或其他相关信息。 5. 数据解析:解析接收到的服务器响应,提取出有用的信息,如答案文本...

    小九机器人微信接口php

    摘要:PHP源码,插件模块,微信接口 小九机器人是微信论坛提供的聊天机器人,目前开放测试中,该api暂不限制调用次数,功能比小黄鸡更全面  小九现在还支持:  计算功能  (计算1+1,计算3的平方 等);  XX是什么; ...

    基于智能终端的聊天机器人设计.pdf

    由于开源语料库有限,本设计选择了电影独白语料库和小黄鸡语料库,最终选择了训练速度较快的小黄鸡语料进行学习。语料需经过句子和向量的转换、构建问答对、拆分处理,然后训练深度模型,以实现语音识别与文字转换,...

    EGQQ第三方qq

    在这个案例中,EGQQ还支持对接小黄鸡API,小黄鸡是一款流行的情感智能聊天机器人,能够进行更为生动有趣的对话。调用外部API需要了解HTTP请求、JSON数据格式以及API接口的设计。 此外,EGQQ允许用户自定义聊天字体...

    TulingDemo

    "TulingDemo"就是这样一款应用,它巧妙地利用了图灵机器人的API,实现了与用户进行智能对话的功能,犹如微信中的小黄鸡,给用户带来趣味性和互动性的同时,也展示了AI技术的魅力。 首先,我们要理解图灵机器人是...

    基于智能终端的聊天机器人设计.docx

    在这个设计中,选择了小黄鸡语料库进行训练。 8. **深度学习模型**:为了实现更智能的对话,可能采用了深度学习模型,如循环神经网络(RNN)、长短期记忆网络(LSTM)等,这些模型能理解和生成连续的文本序列。 9....

    lowlevelprogramming-university:如何成为低级程序员

    了解系统调用接口和内存管理策略是成为低级程序员的必经之路。 8. **Linux内核黑客**: - 这是针对Linux内核的高级研究,包括修改内核源代码、调试内核模块、性能分析和安全审计。 9. **低级编程**: - 低级编程...

    logger:标准化日志

    为了实现日志组件的互换性和可扩展性,可以定义一个标准化的日志接口,允许不同模块使用相同的日志记录方式,同时也方便替换不同的日志实现。 9. `logger-main`项目: 这个文件名暗示可能是一个Go项目的主入口文件...

    sysinfo:通过golang获取linux系统信息(cpu,内存,磁盘等)

    让我们深入探讨一下如何利用这个库以及背后涉及的Linux系统接口。 首先,`sysinfo`库通常包含以下主要模块: 1. **CPU信息**:通过调用`/proc/stat`文件来获取CPU的总体使用情况,包括用户时间(user),系统时间...

    nativescript-izettle:使用iZettle直接在您的NativeScript应用中接受付款

    值得注意的是,为了保证用户的支付安全,`nativescript-izettle`遵循了PCI DSS(Payment Card Industry Data Security Standard)标准,所有的敏感信息都会在本地处理,不会通过应用的网络接口传输。 在实际应用中...

    NtoC:学习C ++

    多态(polymorphism)允许使用同一接口调用不同类的方法,提供灵活性。 8. **模板**:模板是泛型编程的工具,可以创建泛型函数和泛型类,提高代码复用。 9. **输入/输出流**:C++使用`iostream`库处理输入输出,如...

    LabProjectsJava

    这个资源可能包含了多个小项目,每个项目都旨在帮助用户深入理解和掌握Java编程的各种核心概念和技术。以下是对其中可能包含的知识点的详细阐述: 1. **基础语法**:项目可能涵盖Java的基础语法,如数据类型(包括...

    axis1-4.zip

    4. **示例**:示例服务和客户端代码,演示如何创建、部署和调用Web服务,这对于初学者来说是非常有价值的资源。 5. **配置文件**:可能包括服务器配置、服务部署描述符等,这些文件指导了Axis1如何运行和设置Web...

Global site tag (gtag.js) - Google Analytics