php实战之使用curl抓取网站数据

news/2024/5/9 8:33:12/文章来源:https://blog.csdn.net/htmlgood/article/details/49558703

之前做过一个网站数据抓取的工作,让我充分感受到了计算机科学的生产力。之前为了抓取网站源数据的数据,我们公司只能依靠人多力量大的方式,一点一点从源网站抠,整整干了三天,干得头昏脑涨,听老板说以前有php人员抓取过数据,但是抓取的数据不理想,不能入库,只能换成人工的了。趁着学习这段时间,整了整这个项目,不负有心人。在研究源数据网站的数据传输方式以后,突然发现,原来获取这些数据如此简单:程序源码如下:

<?php
header("content-type:text/html;charset=utf-8");
ini_set('max_execution_time', 300);
function getScholar($start,$end){
$result = array();
for($i=$start;$i<$end;$i++){$url = "http://****.gov.cn*****";$post_data = array ("currentPage" => $i,//当前页"pageSize" =>7 ,);$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);// 我们在POST数据哦!curl_setopt($ch, CURLOPT_POST, 1);// 把post的变量加上curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);$output = curl_exec($ch);$output_json = json_decode($output);curl_close($ch);//var_dump($output_json);//die();foreach($output_json->projectList as $k => $v){$result[$v->code][]=$v->code;$result[$v->code][]=$v->name;};
}
$end_end = $end-1;
$fp = fopen("output-{$start}-{$end_end}.csv",'w');//打开文件foreach ($result as $v){ob_clean();if(fputcsv($fp,$v)===false){//加数组数据放到csv文件中die("can't write csv line");}}
fclose($fp) or die("can't close scholar.csv");
if(count($result)!=($end-$start)*7){echo "数据出现错误";echo "<br/>";echo count($result);exit;
}echo "数据抓取完成,共抓取到".count($result)."条记录";
}
getScholar(3950,4000);//读取3950-4000页的数据

这里主要用到了curl库,在刚开始用的时候,程序显示curl_init()不可用,但是这是已经将php的curl扩展打开了,后来百度知道,原来是在window目录下少了libeay32.dll、ssleay32.dll这两个文件,将这两个文件从php/ext 复制到windows 的system32目录下,然后重启Apache就可以了。
curl logo

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_876373.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第一次构建个人网站的记录

很早之前就想构建一个属于自己的个人网站&#xff0c;自己设计样式&#xff0c;管理维护。但是一直没有进行相关的实践。 今天总算是成功了&#xff0c;也算是拥有了一个属于自己的“后花园了”。 点击进入我的“后花园” 下面我就来讲讲如何搭建一个属于自己的个人网站。 搭…

CSS+DIV练手——旅游网站

BS要结了&#xff0c;抽出空来拿CSSDIV练练手&#xff0c;用了理解的会更深刻&#xff0c;这次做的是个旅游网站的界面&#xff08;例子源于《精通CSS.DIV网页设计与布局》&#xff09;。 html代码&#xff1a; <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitiona…

从网站细节入手提高易用性

信息系统 存储了大量信息&#xff0c;提高对信息查找的效率&#xff0c;其系统的可用性会大大的提高。那如何提高效率呢&#xff1f;哪哪些方面入手呢&#xff1f; 想要提高效率&#xff0c;首先简化操作必不可少&#xff0c;拿jc系统来说&#xff0c;基础系统在检索特定类型的…

交互设计[小插曲]--网站UI配色

作为一个前端工程师&#xff0c;我想懂一些基本的网站配色技巧还是必须的&#xff0c;现在将我在BootStrap中看到一个非常不错的配色技巧跟大家分享下&#xff0c;相信大家一看就明白&#xff1a; 同时&#xff0c;我想在这里分享自己对工程师工作态度的一些看法&#xff1a; …

浅谈SEO优化

前段时间帮朋友搬家&#xff0c;被问到会不会写python爬虫&#xff0c;我说不会&#xff08;真的不会&#xff09;。但是去图书城充数的时候还是大概瞄了一下有关python爬虫的书籍的&#xff0c;有各种各样的python爬虫框架&#xff0c;Scrapy、PySpider、Crawley、Grab等等各种…

2021新手建站-宝塔一键部署WordPress(上)

2021新手建站-宝塔一键部署WordPress&#xff08;上&#xff09; 1.前期准备 服务器域名 2.部署宝塔 演示Centos系统下的宝塔部署过程&#xff0c;如果你是其他系统&#xff0c;可以去宝塔官网查看对应的系统如何部署安装&#xff01; 远程登录到你的服务器&#xff08;需要…

【js】多种方式查看网站的cookie

1.F12在浏览器的控制面板console中输入document.cookie查看&#xff1a; 2.在谷歌浏览器的开发者工具Application中找到cookie查看&#xff1a; 3.在浏览器的设置中找到&#xff0c;已谷歌浏览器为例&#xff0c;在谷歌浏览器的地址栏输入&#xff1a; chrome://settings/conte…

Java Web开发 基于HttpServlet的用户登录网站 实例

分享一下我老师大神的人工智能教程&#xff01;零基础&#xff0c;通俗易懂&#xff01;http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章。分享知识&#xff0c;造福人民&#xff0c;实现我们中华民族伟大复兴&#xff01; 一个简单的小例子&#xff0c;基于httpser…

阿里云上部署webservice或者网站,服务器本身测试可以整成使用,但是在其他机器上调用时找不到网页或者webservice

阿里云上部署webservice或者网站&#xff0c;服务器本身测试可以整成使用&#xff0c;但是在其他机器上调用时找不到网页或者webservice 前一段时间做项目时需要用到webservice&#xff0c;开始时在自己的本地机器上创建了webservice,然后在vs2012中发布了这个webservice 然后…

iis部署网站(asp.net或者wcf)出现HTTP 错误 404.17 - Not Found 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理。

首先参考这个&#xff1a; http://blog.csdn.net/xuwei_xuwei/article/details/36895193 https://q.cnblogs.com/q/32443/ 其次&#xff1a; http://www.zhixing123.cn/net/41765.html 还有看下配置iis的时候有没有 都配置过了基本没问题

发布网站到本地IIS出错

错误&#xff1a; win10以前系统以管理员方式打开cmd执行 c:\windows\microsoft.net\framework64\v4.0.30319\aspnet_regiis.exe -i win10以管理员方式打开cmd执行 dism /online /enable-feature /featurename:IIS-ISAPIFilter dism /online /enable-feature /featurename:II…

12个免费学习编程的网站

摘要&#xff1a;无论想学什么,也无论出于什么目的想学,都需要你保持好奇心。但是作为刚想入门的新手&#xff0c;面对眼前海量的信息&#xff0c;或许根本不知道从哪里开始。想学习编程&#xff1f;这里有12个提供免费编程课的网站推荐给你。 曾几何时&#xff0c;编程对极客来…

网站部署到IIS上如何进行调试

在一个网站成功部署后&#xff0c;有时候可能会遇到一些错误&#xff0c;但又不能一眼看出错误源&#xff0c;如果能在源程序里下断点进行调试就好了&#xff0c;这样就能准确的找出错误代码。 下面就跟大家说说如何在一个已经部署了的网站上进行断点调试&#xff08;前提 有网…

【技巧】去哪找高清免费素材?这些资源网站必须收藏!

经常有同学问找素材和看创意的网站&#xff0c;今天就给大家介绍几个&#xff0c;素材免费且好用。 ① picjumbo 网址&#xff1a;https://picjumbo.com/ 美丽的免费照片 为高分辨率下载免费的图片&#xff0c;背景和图像&#xff0c;用于个人和商业用途 ② 01资源网 网址&…

10个超强英语学习资源网站,学霸们都在用!

想知道学霸们是怎么炼成的吗&#xff1f; 一起来看看躺在学霸电脑收藏夹的10个高档学习网站&#xff0c;用好它们&#xff0c;你也可以成为高手&#xff01; 1、TED 适用人群&#xff1a; 学霸&#xff0c;思想者 主要特点&#xff1a; 以专业、深度思考话题见长 网站简介&am…

找2021考研资料?这些超强资源网站必须知道!

&#xff08;1&#xff09;爱课程&#xff1a; 网址&#xff1a;http://www.icourses.cn/home/ 爱课程是教育部、财政部“十二五”期间启动实施的“高等学校本科教学质量与教学改革工程”支持建设的一个高等教育课程资源共享平台&#xff0c;集中展示“中国大学视频公开课”和…

【简历模板素材】制作简历,找简历模板?这几个网站全部搞定!

今天给大家推荐三个比较好用的制作简历&#xff0c;找简历模板的网站&#xff0c;可以在线制作并下载&#xff0c;也可以直接找简历模板套用&#xff01; 第一个推荐的网站就是——01资源网。 这是一个可以在线下载各种模板素材资源的网站&#xff0c;除了简历模板&#xff0…

冷知识!年薪百万的程序员常用的两个神网站分享!

今天分享两个程序员必逛的神网站。也是相对比较冷门的知识&#xff0c;两个网站都非常不错。 第一个是&#xff1a;No Design 网址&#xff1a;https://nodesign.dev 海量设计资源&#xff01;一秒搞定设计&#xff01; 网站上收集了许多十分便利的 UI 设计工具与设计资源&…

如何搭建一个像01资源网那样的付费资源网站?教你用wordpress快速搭建!

今天教大家如何快速创建一个属于自己的网站&#xff0c;永久免费&#xff01;并且支持各种类型&#xff0c;你可以创建一个简单的个人展示页&#xff0c;也可以创建一个好看的个人博客&#xff0c;甚至还可以创建一个电商网站&#xff0c;具体适用范围&#xff0c;大家可以自己…