一言-hitokoto 是什么
先放上官方的链接 一言网 ,
一句话服务,简单说就是随机选取一句话展现出来,效果图。
需要做什么
部署接口
在网站根目录新建hitokoto文件夹,然后在文件夹里新建 index.php 文件
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$path = dirname(__FILE__);
$file = file($path."/hitokoto.txt"); #hitokoto.txt为语句文件
$arr = mt_rand( 0, count( $file ) - 1 ); #随机选取一行
$content = trim($file[$arr]);
if (isset($_GET['charset']) && !empty($_GET['charset'])) {
$charset = $_GET['charset'];
if (strcasecmp($charset,"gbk") == 0 ) {
$content = mb_convert_encoding($content,'gbk', 'utf-8');
}
} else {
$charset = 'utf-8';
}
header("Content-Type: text/html; charset=$charset");
if ($_GET['format'] === 'js') {
echo "function hitokoto(){document.write('" . $content ."');}";
} else {
echo $content;
}获取语句文件(hitokoto.txt)
在 一言网 爬取 语句文件
一言网 api的请求地址为:https://v1.hitokoto.cn/
根据官方提供的文档,返回默认为json格式,各参数如下.
选择需要的分类(tpye),将id和正文(hitokoto)分别保存下来,避免重复。
代码如下,请前往 此处 下载 (说起来这好像是我写的第一个爬虫…)
1 | import requests |
命令行运行示例
1 | python hitokoto.py -a <amount of the hitokoto> -d <delay> |
脚本会在相应目录下生成id.txt 和hitokoto.txt 文件
将hitokoto.txt 文件放入之前创建的hitokoto文件夹内
调用部署好的接口
将下面两行代码添加到博客你想显示一言的位置
1
2<script type="text/javascript" src="https://你的域名/hitokoto/?format=js&charset=utf-8"></script>
<div id="hitokoto"><script>hitokoto()</script></div>
参考链接