Looking at the Stars.(简称叫我853!

【已关闭】Hitokoto API——853源

hitokoto.us已恢复,请将API更改至hitokoto.us或其他源

——Sonic853

一言来源:http://hitokoto.us/api.html

由于不知为什么,hitokoto.us不能打开了。

幸好来自某网友的群里有人上传了从Hitokoto抓来的数据(貌似?)

我就尝试制作这棘手的玩意

嘛。。试试我学习来的PHP和MySQL知识是否能够运用

Ps:该API仅供学习与私人使用,只在官方一言网站出现故障时才启用该API,禁止商业化。

现在该API已制作完成,以下将说明调用方法:

获取方法


数据获取

获取地址:http://hitokoto.bronya.net/rand/
请求方式:GET
字符集暂时只支持utf8
请求参数:

encode 数据格式,对应如下
    json 默认为此,返回JSON格式数据
    mix 直接简化输出hitokoto
    js 返回函数名为hitokoto的JavaScript脚本,用于同步调用
    mixjs 返回函数名为hitokoto的JavaScript脚本,用于同步调用【简化】
    jsc 返回指定CallBack函数名的JavaScript脚本,可用于异步调用
    fun 用于异步调用时,指定CallBack的函数名,不可包含特殊字符

实例:

请求:

http://hitokoto.bronya.net/rand/?encode=json

返回:

{
    hitokoto :  "呐,知道么,樱花飘落的速度,是每秒五厘米哦~",
    catname :  "动画",
    author :  "烤飞鱼的土豆",
    source :  "秒速五厘米",
    date :  "2011.10.15 23:53:03"
}

参数说明:

hitokoto 一言的正文部分,不包含前后引号
catname 分类名称
author 一言的投稿人
source 一言的出处,可能为空
date 一言的投稿日期

调用举例 – JavaScript + HTML【推荐】

脚本地址:http://hitokoto.bronya.net/rand/?encode=mixjs

使用方法:

1. 将下面这段代码放入页面内需要展示一句话的位置即可

<script type="text/javascript" src="http://hitokoto.bronya.net/rand/?encode=mixjs"></script><div id="hitokoto"><script>hitokoto()</script></div>

该脚本实质为document.write的脚本。


调用举例 – JavaScript + HTML

脚本地址:http://hitokoto.bronya.net/rand/?encode=js

使用方法:

1. 将下面这段代码放入HTML页面的head标签内

<script type="text/javascript" src="http://hitokoto.bronya.net/rand/?encode=js"></script>

2. 将下面这段代码放入页面内需要展示一句话的位置即可

<div id="hitokoto"><script>hitokoto()</script></div>

该脚本实质为document.write的脚本。


调用举例 – JavaScript + JSON CallBack

脚本地址:http://hitokoto.bronya.net/rand/?encode=jsc

使用方法:

同步:

1. 将下面这段代码放入HTML页面的head标签内

<script type="text/javascript" src="http://hitokoto.bronya.net/rand/?encode=jsc&fun=sync"></script>

该脚本会与页面同步加载,加载成功后会自动调用指定的函数名,本实例中为sync,并将数据传递给该函数,提前定义该函数即刻达到接收并处理一言数据的目的。

异步

1. 将下面这段代码放入HTML页面的最底部

<script type="text/javascript">setTimeout(function(){var hjs=document.createElement('script');hjs.setAttribute('src','http://hitokoto.bronya.net/rand/?encode=jsc&fun=async');document.body.appendChild(hjs);},100);</script>

通过setTimeout加载JavaScript脚本达到异步加载js脚本的目的,加载成功后会自动调用指定的函数名,本实例中为async,并将数据传递给该函数,提前定义该函数即刻达到接收并处理一言数据的目的。


这是示例:

来自网友的20条留言

  • 乱码853!1

    Hello,我也开发了一个 关于古诗词的 一言 API,可以根据场景智能推荐。不知道博主有没兴趣看一看,我们还提供炒鸡方便的安装代码。一起学习哈哈。 https://www.jinrishici.com

    2018-10-28 17:07  
  • 访问了一下,发现hitokoto.us恢复了 #(滑稽)

    2017-01-15 20:02  
    • Sonic853站长20

      谢谢提醒_(:з」∠)_

      2017-01-15 23:44  
  • qq_avatar
    LiarOnce853!1

    http://hitokoto.cn
    我找到了这个,不知道是不是 #(滑稽)

    2016-11-26 17:54  
    • Sonic853站长20

      并不是原站长的网站 #(滑稽) 也是代替原站长的第三方一言

      2016-11-27 12:56  
  • Hitokoto的作者是bangumi的站长Sai
    想不到居然关闭了,我看域名10.14就要到期了,说不定可以盘下来复活一下?

    2016-10-07 11:06  
    • Sonic853站长20

      貌似认错站长了哦? #(滑稽)
      bangumi的站长是saiccc,Hitokoto站长是MariSai
      只是他们的名字简称撞车而已,而且他们的出生年月都不一样。 #(滑稽3)

      2016-10-11 03:43  
  • BILIBIBI853!2

    我有492+7799条数据 #(滑稽)

    2016-09-29 18:03  
  • 小兜853!1

    求Hitokoto数据

    2016-09-10 20:45  
    • Sonic853站长20

      数据不是我抓的,我不敢分享_(:з」∠)_

      2016-09-14 18:14  
  • Aaron853!2

    一言挂掉之后大家都在写自己的api = =

    2016-08-25 15:52  
  • Horizon853!1

    #(滑稽) #(滑稽) #(滑稽) 说好的853条数据呢,我获取数据这么久 #(滑稽) #(滑稽) #(滑稽) ,明明就只有486条。。。。和其他现在还有一言的网站一样,爬取出来的也只有不到五百条。。。能给我数据吗?不要怪我一直获取数据,你这个没有限制一定时间获取的数量,好容易给你搞炸 #(乖) #(乖) #(乖) 我貌似已经确定,数据只有486条了。。。我记得最后一次访问hitokoto.us时数据好像是一千多条

    2016-08-21 10:21  
    • qq_avatar
      轻梦853!3

      853是博主名字的简称,还有一言一共491条数据

      2016-08-21 21:58  
  • 兰陵853!1

    居然有抓下来的数据 #(滑稽)

    2016-08-19 23:24  
  • qq_avatar
    轻梦853!3

    推荐配合这个:http://www.chainwon.com/sentence.php?id=1341404710000 #(滑稽)

    2016-08-16 06:45  
    • Sonic853853!1

      求随机 #(滑稽)

      2016-08-18 00:20  
      • qq_avatar
        轻梦853!3

        #(滑稽) 卧槽,这是内容页,只是做个跳转而已

        2016-08-19 13:01  