php采集一言代码_php抓取一言数据
本来我博客的一言,都是来自https://github.com/kokororin/hitokoto/blob/master/hitokoto.json的,400多条的样子。
刚刚自己有点不满足这些了,于是就像自己能不能试着扒一下一言的数据呢。
从https://hitokoto.cn/status这个页面发现一言数目1461,应该就是一共的数量吧???
直接请求https://v1.hitokoto.cn就可以获得一条一言的json
然后开始弄
$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了
php采集一言代码_php抓取一言数据相关推荐
- php采集一言代码_PHP简单实现一言 / 随机一句功能
很多网站都喜欢在页面中加个一言,不过一般都是调用的第三方api.其实,使用万能的php能用短短的几行代码就实现该功能! 将下列代码复制并粘贴到 api.php 中保存,你的专属"一言&quo ...
- php每天扒取当天新闻_php 抓取新浪新闻的程序代码
Jquery中文网 > 脚本编程 > php > 正文 php 抓取新浪新闻的程序代码 php 抓取新浪新闻的程序代码 发布时间:2016-10-09 编辑:www.jque ...
- php抓取百度搜索百度快照,php抓取百度快照、百度收录、百度热词程序代码,抓取百度快照_PHP教程...
php抓取百度快照.百度收录.百度热词程序代码,抓取百度快照 /* 抓取百度收录代码 */ function baidu($s){ $baidu="http://www.baidu.com/ ...
- 爬虫软件尝试-后羿采集器:批量免费抓取网页数据
免费软件尝试-后裔采集器 软件特点:免费,全平台(Windows. Mac. Linux),操作简单无需技术. 使用流程: 下载软件打开->输入抓取数据的网址->职能采集->等待自动 ...
- Java版 QQ空间自动登录无需拷贝cookie一天抓取30WQQ说说数据流程分析【转】
Java版 QQ空间自动登录无需拷贝cookie一天抓取30WQQ说说数据&流程分析 QQ空间说说抓取难度比较大,花了一个星期才研究清楚! 代码请移步到GitHub GitHub地址:http ...
- php curl_setopt抓取内容,PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
通过curl_setopt()函数可以方便快捷的抓取网页(采集很方便),curl_setopt 是php的一个扩展库 使用条件:需要在php.ini 中配置开启.(PHP 4 >= 4.0.2) ...
- 微信好友大揭秘,使用Python抓取朋友圈数据,通过人脸识别全面分析好友,一起看透你的“朋友圈”...
微信:一个提供即时通讯服务的应用程序,更是一种生活方式,超过数十亿的使用者,越来越多的人选择使用它来沟通交流. 不知从何时起,我们的生活离不开微信,每天睁开眼的第一件事就是打开微信,关注着朋友圈里好友 ...
- 如何使用浏览器控制台通过JavaScript抓取并将数据保存在文件中
by Praveen Dubey 通过Praveen Dubey 如何使用浏览器控制台通过JavaScript抓取并将数据保存在文件中 (How to use the browser console ...
- directsound抓取麦克风PCM数据封装类
directsound抓取麦克风PCM数据封装类 网上有很多方法从麦克风读取PCM数据,不想一一举例.只是在这里发布一个我自己写的directsound的麦克风PCM数据采集类,通过它,可以很方便的利 ...
最新文章
- java post 打开新页面_JAVA后台POST/GET访问方法
- SAP成本会计分录大全
- java i 什么时候变_Java中i++与++i的区别(效率分析)
- 电脑键盘练习_三款神器!超越键盘飞毛腿!
- 在codeigniter中使用Cache_Lite来缓存
- python iterable对象_如何理解Python中的iterable对象
- 用户一片哀嚎!三星手机系统突遇大面积崩溃:现黑屏、重启、乱码
- 舒服的网页登录界面设计灵感
- java调用Dos命令
- Spring Cloud入门教程-Ribbon实现客户端负载均衡
- 大数据:数据大合集,你想要的这里或许会有
- 大四求职经历——我只是一个普普通通的程序员
- python绘制三重积分图像_三重积分-图解高等数学13 | 文艺数学君
- 微型计算机原理与接口技术考试附录
- 电脑C盘空间变小解决办法
- 前端学习笔记2——错误解决,接口,echart
- 从菜鸟到架构师(一)
- 计算机控制技术注册二建,中央空调系统运行培训
- 检测钻石的边缘,以及确定钻石顶点的位置
- 教你如何从零基础基础到深入学习UI设计
热门文章
- 如何把pdf转成excel
- 从七十年代到现在软件架构的思想变化
- Apple现行公开的framework简介
- SAP ABAP中字符大小写转换问题汇总
- STM32实战总结:HAL之FSMC控制TFT-LCD
- 云台和华为p30pro_除了拍月亮 华为P30 Pro还拍出了首部轻科幻CG短片
- Springboot毕设项目咖啡馆管理系统4598u(java+VUE+Mybatis+Maven+Mysql)
- 【西语】【2】Recuërdame antes de que se desaparezca la memoria del amor 在爱的记忆消失前,请记住我
- 第4周项目4:程序分析(2)
- Latex中多个表格的引用