Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >php抓取一言数据

php抓取一言数据

作者头像
泽泽社长
发布于 2023-04-17 11:08:31
发布于 2023-04-17 11:08:31
80900
代码可运行
举报
文章被收录于专栏:泽泽社泽泽社
运行总次数:0
代码可运行

本来我博客的一言,都是来自https://github.com/kokororin/hitokoto/blob/master/hitokoto.json的,400多条的样子。

刚刚自己有点不满足这些了,于是就像自己能不能试着扒一下一言的数据呢。 从https://hitokoto.cn/status这个页面发现一言数目1461,应该就是一共的数量吧???

直接请求https://v1.hitokoto.cn就可以获得一条一言的json

然后开始弄

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$nr='[
';
//用于拼接内容,使其变成json格式
//设置超时参数
$opts=array(
        "http"=>array(
                "method"=>"GET",
                "timeout"=>3
                ),
        );
$context = stream_context_create($opts);
//超时这个部分我不懂,在网上随便复制的
for($i=0;$i<1461;$i++){
//设置循环变量,让其循环1461次
$json_string =file_get_contents('https://v1.hitokoto.cn/', false, $context);
//抓取一条一言的json内容
$data = json_decode($json_string);
 //对JSON数据进行解码,转换为PHP变量
$id = $data->id;
//定义id为一言json的id
$a= array();
//创建一个空数组
$isin = in_array($id,$a);
//判断一言id是否存在数组中,用来过滤重复抓取的一言数据
if($isin){
$i--;
//如果存在,则i-1,然后重新执行for循环
}else{  
array_push($a,$data->id);
//不存在,将一言id存在数组里
$data_json = json_encode($data);
//转为json格式
$dh=',
';
if($i==0){$dh='';}
 $nr=$nr.$dh.$data_json; 
//拼接内容,使其跟json格式对应
}
 
}
echo $nr.'
]';
//循环结束,输出最终内容

刚写完的瞬间,内心只剩下了“完美”二字,然而我一运行,转圈圈...转圈圈...然后就404了。

然后我内心依旧剩下两个字“垃圾”。

然后我就将循环次数由1461改成了300,准备分批抓取,手动将抓取结果存txt,同时将这300条的数据id都输出出来,然后手动添加到原本建立的空数组中,然后进行第二批抓取... 然后第三批... 等等...

最后我抓了1500条数据,我就不抓了累了,不过官方不是说就1461条数据吗?好奇怪!

然后用https://www.bejson.com/验证了下格式,没啥问题就ok了

一言抓取

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Hexo博客添加一言
动漫也好、小说也好、网络也好,不论在哪里,我们总会看到有那么一两个句子能穿透你的心。我们把这些句子汇聚起来,形成一言网络,以传递更多的感动。如果可以,我们希望我们没有停止服务的那一天。
YangAir
2020/02/08
1.3K0
Hexo博客添加一言
一言API的调用方法,随机语句
这篇文章最后修改于 2022-06-23 日,距今已有 152 天,请注意甄别内容是否已经过时!
羽翼博客
2022/11/28
1.2K0
使用一言给网站加上随机一段话
一言主要为网站主要提供一句话服务。我们可以利用API直接调用在博客的任何文字显示,本站也已加上了哟,细心的人可以找下~~~ 先看个例子:刷新页面下面一行文字将随机出现
Lcry
2022/11/29
3600
【docker】自建一言API接口
一言官方给出的API已经足够满足大部分场景的使用,但为什么还要自行部署呢?因为一言是公益性质的,所以在使用调用方面有限制。如果网站访问量大,不可避免的会请求过快,那么你服务器的IP有可能会被拉黑一段时间(然后就加载不出一言的内容了)。自建的话就没有这个担忧了~
夜梦星尘
2024/08/20
1660
【docker】自建一言API接口
给你的网站主题加上一言功能,适用typecho,wordpress
} 使用方法也非常简单粗暴,在主题文件中想输出一言的地方加入以下输出代码即可,当然,你也可以放在文章的评论框哦~
小妍树洞
2022/11/05
6470
Hexo博客 | 如何让你的valine更好看
之前写了一个博客中能用到的代码(二),这是第三篇 这篇文章介绍valine的样式优化
Justlovesmile
2021/12/13
8231
Hexo博客 | 如何让你的valine更好看
PHP 自动爬毒汤日历搭建毒鸡汤一言 API 接口
什么是毒汤日历?毒汤日历是一本有毒的日历,每天用毒鸡汤来唤醒你。 你甚至不用打开日历,打开 App 的推送,每天会定时送上一杯毒鸡汤。 自己也能制作毒鸡汤?那太好了,毒性够强,如果让别人扎到心你就厉害了。 每条毒汤可以点扎心、发毒评,或者转发给别人,让别人也扎扎心。
王图思睿
2021/06/15
1.3K0
《Chrome插件英雄榜》第95篇更新!JsonFormatter轻量化开源Json格式化工具,查看一言api接口字段数据结构
JsonFormatter的使用非常简单,安装即可自动生效,处理的效果也很明显,让json数据结构清晰可见。
zhaoolee
2021/03/02
1.1K0
《Chrome插件英雄榜》第95篇更新!JsonFormatter轻量化开源Json格式化工具,查看一言api接口字段数据结构
php查看B站互相关注的好友
B站跟微博越来越像了,被网友戏称“B博”,但是有个小细节跟微博还有点差异,在B站我的关注里,只能看到,xxx已关注,而看不到“互相关注”的字样! 如下图,右侧
泽泽社长
2023/04/17
6510
php查看B站互相关注的好友
KZ-API接口服务
挺早之前就想写个 api 接口服务,封装下自己收集的一些 api 接口,以便调用,正好最近在接触 SSR 框架,所以就使用 Nuxt3 来编写该项目。
愧怍
2022/12/27
2.6K0
KZ-API接口服务
ChatOCR:文心一言/千帆API实现关键信息提取
现在的任务是从OCR文字识别的结果中提取我指定的关键信息。OCR的文字识别结果使用符号包围,包含所识别出来的文字,顺序在原始图片中从左至右、从上至下。我指定的关键信息使用[]符号包围。请注意OCR的文字识别结果可能存在长句子换行被切断、不合理的分词、对应错位等问题,你需要结合上下文语义进行综合判断,以抽取准确的关键信息。输出为json格式。
机器学习AI算法工程
2023/11/24
1.8K0
ChatOCR:文心一言/千帆API实现关键信息提取
零基础用文心一言带你绘制组合图
写着神经网络计算代码,对矩阵计算想整个清晰的展示方式,就想着用 Python 绘制下矩阵运算图。先偷懒一下,看看有没有人分享过代码?
生信宝典
2024/03/12
2330
零基础用文心一言带你绘制组合图
Python每日一练(21)-抓取异步数据
Python每日一练(21)-抓取异步数据
Java架构师必看
2021/05/14
3K0
Python每日一练(21)-抓取异步数据
Akina For Typecho主题修改记录分享
大多数博主,基本都换过各种类型的博客程序,WordPress、Typecho、hexo、Z-Blog等等太多了,最后选择Typecho,就是因为小巧不臃肿。本人一共使用过两款:Cactus来自仙岛驿站和Akina来自子虚之人。
目的地-Destination
2023/10/12
3650
Akina For Typecho主题修改记录分享
Vue3+NodeJS 接入文心一言, 发布一个 VSCode 大模型问答插件
随着大模型能力越来越卷,在垂直领域的落地也在加快,对于大模型代码生成能力而言,最简洁高效的方式就是集成为常用IDE的插件,在vscode的插件战场中,比较知名的就有 GitHub Copilot, 智谱清言的codegeex, 讯飞星火的iFlyCode。
五月君
2023/11/14
2.3K0
Vue3+NodeJS 接入文心一言, 发布一个 VSCode 大模型问答插件
2019年写个CS插件吧
纳尼?2019年?其实一开始我的内心是拒绝的,一转眼就到了2018年的尾声,再不写个【2019年】的标题定好文章的保质期,感觉刚写这篇文章就要过期了!然而,回顾2018年,每每想起2018年的收获,我的内心是奔溃的,又是一无所获的一年悄然虚度;看着镜子里头发和技术一样稀疏的自己,我也只能认命接受--“少壮不努力,老大偷代码”……废话写了一大堆,下面,咳咳,下面进入正题吧:
胡琦
2021/09/09
1.1K0
22-物联网开发终端管理篇-PHP使用PDO方式连接MySQL数据库,并对外提供GET,POST接口获取数据库数据(linux系统,宝塔)
现在数据库里面已经存储了设备的数据了,获取某个设备某个时间段的历史数据格式规定如下:
杨奉武
2022/09/20
8910
22-物联网开发终端管理篇-PHP使用PDO方式连接MySQL数据库,并对外提供GET,POST接口获取数据库数据(linux系统,宝塔)
php基础(二)
输出b,if中的空值赋值给$num,因此if条件必定为false,还有其他一些大同小异的题目,用=和==判断for循环的,只要把握好基本的概念就行了
仇诺伊
2018/09/12
1.2K0
我的基于 JamStack 的新博客
今天心血来潮,介绍一下我的新博客站点 —— https://EWhisper.cn。
东风微鸣
2022/04/22
9400
我的基于 JamStack 的新博客
微信公众号发布提醒(微信公众号模板消息接口)
灵感来源于学校的 每日健康日报,要求使用微信小程序进行每日健康打卡。所以此项目的功能类似于 QQ群机器人,或者是 每日闹钟。
全栈程序员站长
2022/07/26
13K0
微信公众号发布提醒(微信公众号模板消息接口)
推荐阅读
相关推荐
Hexo博客添加一言
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验