zoukankan      html  css  js  c++  java
  • 让微信保持高度活跃的利器

    这里说的微信就是微信公众平台,为了提高其活跃度,开发人员在微信公众帐号中增加了聊天、笑话、天气查询等非常多功能。但这些功能已经没有什么特别之处,为了差别让自己的公众帐号拥有与众不同的地方。就须要开发一些有创意的功能。

    本文就解说怎样通过图灵机器人api接口实现“成语接龙”,关于图灵机器人。就不多介绍,大家能够去看一下官方站点:

    http://www.tuling123.com




    实现步骤:

    1、注冊图灵机器人api,获取接口key。
    图灵机器人站点:http://www.tuling123.com/
    邮箱注冊,激活就可以。


    2、封装參数,key、info、userid

    /**

           * 封装http请求的url參数

           * @return     url

           */

          public String formatUrl(String info){

               /** 此处为图灵api接口

                * key:第一步中注冊图灵机器人帐号就可以得到。以11111111取代

                * info:发送给微信的内容,进入成语接龙模式能够用“成语接龙”

                * userid:区分自己的用户,微信能够用微信的openid */

               info = "成语接龙";

               String apiUrl = "http://www.tuling123.com/openapi/api?key=11111111&info="+info+"&userid=********";

               return apiUrl;

          }

     

    3、编写httpget请求方法

    /**

           * 发送httpget请求

           * @param param     请求链接和參数

           * @return     结果

           */

          public String getProcess(Stringparam){

               /** 发送httpget请求 */

               HttpGet request = new HttpGet(param);

               String result = "";

               try {

                     HttpResponseresponse = HttpClients.createDefault().execute(request);

                     if(response.getStatusLine().getStatusCode()==200){

                          result =EntityUtils.toString(response.getEntity());

                     }

               } catch (ClientProtocolException e) {

                     e.printStackTrace();

               } catch (IOException e) {

                     e.printStackTrace();

               }

               return result;

          }


    4、调用图灵机器人接口
    /**

           * 请求图灵机器人接口,并解析结果数据

           * @param info   请求内容

           */

          public void getResult(String info){

               /** 获取url */

               String url =formatUrl(info);

               /** 发送http get请求,获取图灵机器人接口结果 */

               String result =getProcess(url);

               /** 解析图灵机器人接口返回结果 */

               try {

                     JSONObject json = new JSONObject(result);

                     //成语接龙模式code=100000

                     if(100000==json.getInt("code")){

                          result =json.getString("text");

                     }

               } catch (JSONException e) {

                     // TODO Auto-generated catch block

                     e.printStackTrace();

               }

          }


    5、在通过“成语接龙”进入成语接龙模式之后。循环调用接口,就可以实现图片中展示的效果。

     

    总结,在成语接龙功能的实现过程中,上下文的关联是最重要的,这也是图灵机器人接口的强大之处。userid參数正是区分不同的用户、对同一个用户前后语义实现关联的标志。所以。想要实现成语接龙的功能,一定要传userid。


  • 相关阅读:
    Numpy学习笔记练习代码 ——(二)
    Requests爬取表格数据并存入CSV中
    Numpy学习练习代码 ——(一)
    Requests爬取中文网站乱码问题
    Pycharm用Ctrl+鼠标滚轮控制字体大小
    一、Windows10下python3和python2同时安装
    inux下配置rsyncd服务
    shell 脚本中$$,$#,$?分别代表什么意思?
    linux shell awk 流程控制语句(if,for,while,do)详细介绍
    定时任务
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/6726696.html
Copyright © 2011-2022 走看看