一、什么是Simsimi?

simsimi公司是提供智能服务,其中一个服务是simsimi聊天机器人服务,每天有超过百万的用户聊天,国内最大的搜索引擎——百度的产品siri使用的就是simsimi提供的api。

你可以在网址http://www.simsimi.com/talk.htm# 进行体验

SimSimi inc. is specialized in collective intelligence service. All kinds of services we provide generates unique entertainment and values through systemized collective intelligence.

One of our services, a chatting robot SimSimi exceeds the limitation of technology of natural-language processing system by collective intelligence and it has a chat with over millions user per day. Our Premium knowledge providing service “Jisikman” creates millions of valuable knowledges a day.

We invite you to our realm of service which is available through our cloud of collective intelligence, Crowd Cloud that SimSimi inc. creates.

二、Simsimi小黄鸡API

在 去年的这个时候,小黄鸡的非官方api一度被大家疯狂的在微信公众号上使用,一时间不知道成就了多少微信营销号,同时,华科某位大四学生利用这个api, 结合人人网开发平台,制作了一个小黄鸡的人人号,@小黄鸡之后,就可以利用api自动进行回复,是的这个人人号瞬间粉丝陡增。

然而大家使用的都是非官方的API,所谓非官方,就是不是simsimi公司提供的合法使用途径,API大致的原理是利用编程语言,模拟浏览器发送post请求到http://www.simsimi.com/talk.htm# 链 接,解析响应,然后作成相关的小黄鸡API。这个方法后来被我在本博客中在博文中发布,导致使用人数激增,simsimi公司似乎察觉了什么,立马对这种 模拟请求的方式做出了屏蔽,一旦某ip请求数量和频率超过限制,则终端对它的请求。正式官方对非法API的封锁,也使用国内的开发这关注到之前并不出名的 小i机器人,同样使用语言模拟请求web聊天界面,时间没有过很久,这个页面就加入了图片验证码防止程序模拟。

至此,两个聊天机器人都走上了收费的道路...准确的说,应该是被这帮子开发者赶上了收费的道路,因为他们给它带来了知名度。

三、SimsimiAPI使用

目前,小黄鸡API已经公然收费(http://developer.simsimi.com/api)

不过,和之前一样,会给注册用户提供30天的试用API。

API请求链接为:

Trial-key    http://sandbox.api.simsimi.com/request.p

Paid-key    http://api.simsimi.com/request.p

API请求参数为:

Parameter Value Required Default Description
key String Y   Your key value
text String Y   Query message
lc String Y   Language code(List)
ft Double(0.0 ~ 1.0)   0.0 可以设置一个过滤器
0.0:未过滤(包含诅咒,性内容)
1.0:过滤不文明字句(暂时只支持韩文)
过滤内容,请访问下面的网站。 
https://www.webpurify.com/

API返回格式为:

result:100-ok. 400-Bad Request. 401-Unauthorized. 404-Not found. 500-Server Error.    返回的code

id:Response id. (you can get only if returning result is 100)回复的id,由系统生成,当请求成功返回时才有这个字段。

response:Response message(you can get only if returning result is 100)返回的回复内容。

msg:Result  msg(Description of result code) 返回的code对应的含义

四、Simsimi使用举例

请求举例:

Trial-key    http://sandbox.api.simsimi.com/request.p?key=your_trial_key&lc=en&ft=1.0&text=hi

Paid-key    http://api.simsimi.com/request.p?key=your_paid_key&lc=en&ft=1.0&text=hi

响应举例:

{ "result": 100, "response": "Who are you?!", "id": 13185569, "msg": "OK." }

五、如何免费的使用Simsimi API

我想,大家都懂了,写这篇文章的原因就是很多人搜索小黄鸡 api到我的博客,我想大家都是要找免费的小黄鸡API。这里提供给大家一个思路:

合作伙伴中,有人人网,为什么?本博文前面提高某大四学生做了一个人人号,@小黄鸡之后,会自动进行回复,他使用的就是simsimi的官方正版付费API,既然人人网提供开发平台,可以对帐号进行回复,获得回复等等操作,为什么不能使用程序,登录帐号,然后@小黄鸡,然后获得它的回复,再返回给你自己的用户呢?答案当然是可以的!!!

下面贴出一段可供参考的Java代码,之所以为仅供参考,就是说只能参考思路,代码运行是运行不起来的!!!

如果能够帮助到你,希望回复点评一下,你懂的...

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
import java.o.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.http.Header;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
/**
 * 利用httpclient操作人人网 比如登陆,发状态,模拟你访问任何人主页等等
 * @author: http://50vip.com
 
 */
public class RenRen {
    private String userName = "";
    private String password = "";
     
    private static String redirectURL = "http://www.renren.com/home";
    private static String renRenLoginURL = "http://www.renren.com/PLogin.do";
    private static String talkUrl = "http://photo.renren.com/photo/simsimiWebPagerChat";
    private HttpResponse response;
    private DefaultHttpClient httpclient = null;
    private String requestToken = null;
    private String _rtk = null;
     
    public RenRen(String userName, String password) {
        this.userName = userName;
        this.password = password;
    }
     
    public static void main(String[] args) {
        RenRen rr = null;
        rr = new RenRen("xxxxx@hotmail.com""yyyyy");
        rr.login();
        System.out.println(rr.talk("820"));
    }
    /**
     * 登陆
     * @author: http://50vip.com
     * @return
     */
    public boolean login() {
        if (httpclient != null) {
            return true;
        }
        httpclient = null;
        httpclient = new DefaultHttpClient();
        HttpPost httpost = new HttpPost(renRenLoginURL);
        // All the parameters post to the web site
        List<NameValuePair> nvps = new ArrayList<NameValuePair>();
        nvps.add(new BasicNameValuePair("origURL", redirectURL));
        nvps.add(new BasicNameValuePair("domain""renren.com"));
        nvps.add(new BasicNameValuePair("autoLogin""true"));
        nvps.add(new BasicNameValuePair("formName"""));
        nvps.add(new BasicNameValuePair("method"""));
        nvps.add(new BasicNameValuePair("submit""登录"));
        nvps.add(new BasicNameValuePair("email", userName));
        nvps.add(new BasicNameValuePair("password", password));
        try {
            httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
            response = httpclient.execute(httpost);
            //System.out.println(response);
            catch (Exception e) {
            e.printStackTrace();
            return false;
        finally {
            httpost.abort();
        }
         
        String redirectLocation = getRedirectLocation();
        if (redirectLocation != null) {
            // 跳到首页,登录完成
            String indexHtml=getText(redirectLocation);
             
            //获取requestToken get_check:'-2062261917'
            Pattern pattern1 = Pattern.compile("get_check:'(.*)',get_check_x");
            Matcher m1 = pattern1.matcher(indexHtml);
            if (m1.find()) {
            requestToken=m1.group(1);
            else {
            System.out.println("获取requestToken失败!");
            }
             
            //"获取_rtk失败!"get_check_x:'50d55fbd'
            Pattern pattern2 = Pattern.compile("get_check_x:'(.*)',env:");
            Matcher m2 = pattern2.matcher(indexHtml);
            if (m2.find()) {
                _rtk=m2.group(1);
            else {
                System.out.println("获取_rtk失败!");
            }
        }
        return true;
    }
     
    /**
     * 和人人的小黄鸡交谈
     * @author: http://50vip.com
     * @param msg
     * @return
     */
    public String talk(String msg) {
        String repMsg="";//小黄的回复
         
        HttpPost httpost = new HttpPost(talkUrl);
        // All the parameters post to the web site
        List<NameValuePair> nvps = new ArrayList<NameValuePair>();
        nvps.add(new BasicNameValuePair("_rtk", _rtk));
        nvps.add(new BasicNameValuePair("requestToken", requestToken));
        nvps.add(new BasicNameValuePair("message", msg));
         
        try {
            ResponseHandler<String> responseHandler = new BasicResponseHandler();
            httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
            repMsg=httpclient.execute(httpost, responseHandler);
        catch (Exception e) {
            e.printStackTrace();
        finally {
            httpost.abort();
        }
        return repMsg;
    }
     
    /**
     * 此处人人网会302跳转
     * @author: http://50vip.com
     * @return
     */
    private String getRedirectLocation() {
        Header locationHeader = response.getFirstHeader("Location");
        if (locationHeader == null) {
            return null;
        }
        return locationHeader.getValue();
    }
     
    /**
     * 读取首页内容
     * @author: http://50vip.com
     * @param redirectLocation
     * @return
     */
    private String getText(String redirectLocation) {
        HttpGet httpget = new HttpGet(redirectLocation);
        // Create a response handler
        ResponseHandler<String> responseHandler = new BasicResponseHandler();
        String responseBody = "";
        try {
            responseBody = httpclient.execute(httpget, responseHandler);
        catch (Exception e) {
            e.printStackTrace();
            responseBody = null;
        finally {
            httpget.abort();
        }
        return responseBody;
    }
}

转载于:https://www.cnblogs.com/SlashOut/p/4813809.html

Simsimi 小黄鸡机器人最新无限制接口api simsimi机器人接口api 微信公众号相关推荐

  1. 利用simsimi小黄鸡接口,做一个微信公共账号上的机器人

    最近被无聊之风感染了,想调戏下小黄鸡,就直接去官网www.simsimi.com,上看了下,本来想直接抓取网页的,结果出现这种情况 无奈之下,注册了账号,既然是收费了,免费的只能用一周 直接上代码吧 ...

  2. 用java实现Simsimi小黄鸡接口

    package com.iask.webchat.chatmachine; import java.io.BufferedReader; import java.io.InputStream; imp ...

  3. simsimi 教程 java_用java实现Simsimi小黄鸡接口

    package com.iask.webchat.chatmachine; import java.io.BufferedReader; import java.io.InputStream; imp ...

  4. PHP 支付PC端扫码支付、APP接口调起支付宝支付、微信公众号接入支付宝支付

    第一:第三方支付原理 第二:支付接口申请流程 地址:https://docs.open.alipay.com/270/105899/ : 参考地址:https://blog.csdn.net/nove ...

  5. simsimi小黄鸡机器人最新接口api

    <?PHP //simsimi机器人最新接口api由 http://www.xiaodoubi.com 提供,请勿用于非法商业用途 //API端口体验链接:http://www.xiaodoub ...

  6. 网络交换机接口以及级联【转自微信公众号第一监控】

    一.交换机简介 交换机(Switch)意为"开关"是一种用于电(光)信号转发的网络设备.它可以为接入交换机的任意两个网络节点提供独享的电信号通路.最常见的交换机是以太网交换机.其他 ...

  7. java simsimi_“小黄鸡”中文聊天机器人的详细说明.

    小黄鸡语料库 小的黄鸡语料库小黄鸡聊天机器人接口,简单的人工智能开发,非常实用. 微信小黄鸡实现代码 小黄鸡模拟api,模拟小黄鸡调用html 小黄鸡50W聊天 与小黄鸡一起进行的50W问答会话均使用 ...

  8. 智能聊天机器人小黄鸡及其制作方法

    讲前先预热一下,如果有还不熟悉小黄鸡的亲~欢迎大家戳这里 http://mysimi.sinaapp.com/ 自制小黄鸡一枚,欢迎测试.. 暂且叫他小黄鸡2号~1号在后面哈 大家好,我是沐儿,今天很 ...

  9. 小黄鸡自动回复API

    元旦那会儿,小黄鸡一夜之间好像就红遍大江南北,三山五岳,五湖四海什么的.那阵子天天有人问我小黄鸡是嘛... 刚好那阵子我尝试想做一个微信的公共账号,本想把拿来主义发扬光大.可是小黄鸡官方的API有一个 ...

最新文章

  1. 机器学习、数据科学、人工智能、深度学习和统计学之间的区别!
  2. 容器,对象生命周期管理的基石
  3. 【软考-软件设计师】程序设计的基本成分
  4. Linux的centos永久关闭防火墙的命令
  5. office自定义安装选项_如何自定义Office 2013中功能区上的现有选项卡
  6. php html asp .net iis tomcat,iis+apache+tomcat 整合共享80口 支持ASP .NET JSP PHP全能WEB服务...
  7. 前端学习(908):location常用方法
  8. 使用Docker启动Kafka-Manager
  9. 关于Handler和子线程的记录
  10. linux换终端的背景颜色,linux 终端背景色修改
  11. php挂马攻击,PHP批量挂马脚本
  12. 出租分数 20作者 陈越单位 浙江大学
  13. 星空之翼游戏的设计与实现
  14. mysql数据倾斜_Hive SQL 数据倾斜总结
  15. 团队作业8——Beta 阶段冲刺6th day
  16. 深度学习面试题总结1-20
  17. 游戏3D美术设计师前景怎么样?
  18. 少儿编程scratch与AI机器人编程 1小时微课-余强-专题视频课程
  19. 我的朋友逃离北京,在杭州买房了!
  20. js怎么实现导出html文件,JS - 使用 FileSaver.js 实现浏览器文件导出

热门文章

  1. 模拟银行存取款等操作(Java)
  2. 公安部正制定网络安全条例 大数据保护机制将完善
  3. 浅谈动感歌词-歌词解析篇
  4. 纯JS+CSS3制作星星海背景特效
  5. 【CCF计算领域学术会议介绍:2024日程安排、CCF会议deadline汇总、2022年录用率】
  6. MFC消息映射与命令传递
  7. 解决fixing(d:)stage 1问题
  8. 农业数字化怎么做?Insentek从大地探针入手,用动态数据指导施肥灌溉
  9. cache-主存的三种映射方式
  10. 如何将2万条数据快速导入到 MySQL?