扣丁学堂PHP培训之实现一个简单的无需刷新爬虫
author:一佰互联 2019-03-26   click:170

简介:今天扣丁学堂PHP培训老师给大家分享一篇关于PHP一个简单的无需刷新爬虫的小示例,下面我们一起来看一下吧。 ?php //设置最大执行时间set_time_limit(0);function getHtml($url){ // 1. 初始化 $ch = curl_in ...

今天扣丁学堂PHP培训老师给大家分享一篇关于PHP一个简单的无需刷新爬虫的小示例,下面我们一起来看一下吧。

<?php //设置最大执行时间set_time_limit(0);function getHtml($url){  // 1. 初始化   $ch = curl_init;   // 2. 设置选项,包括URL   curl_setopt($ch,CURLOPT_URL,$url);   curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);   curl_setopt($ch,CURLOPT_HEADER,0);   // 3. 执行并获取HTML文档内容   $output = curl_exec($ch);   if($output === FALSE ){    $output = "";   }   // 4. 释放curl句柄   curl_close($ch);   return $output;}function getPageData($url){  // 获取整个网页内容  $html = getHtml($url);  // 初步获取主块内容  preg_match("/教程列表.*教程列表/s",$html,$body_html);  // 返回数据  $data = array;  //判断是否存在要获取的内容  if(count($body_html)){    // 获取页面指定信息    preg_match_all("/<a class="avatar".*user_id="(S*)" href="(S*)" rel="external nofollow" /",$body_html[0],$info_1);    preg_match_all("/<a href="(.*)" rel="external nofollow" .*title="(.*)"/",$body_html[0],$info_2);    $info = array_merge($info_1,$info_2);    //组合的信息    for($index=0; $index<count($info[0]); $index++){      //以文章信息作为key存数组,以及覆盖旧数据      $data[$info[4][$index]] = array( "user_id"  => $info[1][$index], "user_home" => $info[2][$index], "a_url"   => $info[4][$index], "a_title"  => $info[5][$index], );    }  }  return $data;}header("Content-type: text/html; charset=utf-8"); echo "<pre>";// 初始化数据$page_no = 1;$data_all = array;// 分页获取数据do{  $url = "http://www.codingke.com/article?page=2" . $page_no;  $data = getPageData($url);  $data_all += $data;  $page_no ++;}while ($page_no <= 10); //当前只获取10页,如果要全部获取则把条件换成$data或!empty($data)var_dump($data_all);?>
以上就是关于扣丁学堂PHP培训之实现一个简单的无需刷新爬虫的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,想要了解更多关于PHP开发方面内容的小伙伴,请关注扣丁学堂PHP培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的PHP开发视频教程,除此之外扣丁学堂还有PHP从入门到精通的学习路线图供大家参考哦。扣丁学堂PHP技术交流群:374332265。【关注微信公众号获取更多学习资料】 标签: PHP培训 PHP视频教程 PHP在线视频 PHP学习视频

本文仅代表作者个人观点,不代表巅云官方发声,对观点有疑义请先联系作者本人进行修改,若内容非法请联系平台管理员,邮箱2522407257@qq.com。更多相关资讯,请到巅云www.yinxi.net学习互联网营销技术请到巅云建站www.yx10011.com。