`
zzc1684
  • 浏览: 1194996 次
  • 性别: 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;
    }
}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics