php实现递归抓取网页类实例

 更新时间:2015年04月03日 12:20:50   作者:pythoner   我要评论
这篇文章主要介绍了php实现递归抓取网页类,实例分析了php递归操作及网页抓取的技巧,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了php实现递归抓取网页类的方法。分享给大家供大家参考。具体如下:

<?php
class crawler{
 private $_depth=5;
 private $_urls=array();
 function extract_links($url)
 {
  if(!$this->_started){
   $this->_started=1;
   $curr_depth=0;
  }else{
   $curr_depth++;
  }
  if($curr_depth<$this->_depth)
  {
   $data=file_get_contents($url);
   if(preg_match_all('/((?:http|https)://(?:www.)*(?:[a-zA-Z0-9_-]{1,15}.+[a-zA-Z0-9_]{1,}){1,}(?:[a-zA-Z0-9_/.-?&:%,!;]*))/',$data,$urls12))
   {
    foreach($urls12[0] as $k=>$v){
     $check=get_headers($v,1);
     if(strstr($v,$url) && $check[0]=='HTTP/1.1 200 OK' && !array_search($v,$this->_urls) && $curr_depth<$this->_depth){
      $this->_urls[]=$v;
      $this->extract_links($v);
     }
    }
   }
  }
  return $this->_urls;
 }
}
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

  • PHP随机生成随机个数的字母组合示例

    PHP随机生成随机个数的字母组合示例

    在很多系统环境下大家都会用到字母组合各种编码。下面为大家介绍下使用php随机生成随机个数的字母组合,感兴趣的朋友可以了解下
    2014-01-01
  • PHP实现15位身份证号转18位的方法分析

    PHP实现15位身份证号转18位的方法分析

    这篇文章主要介绍了PHP实现15位身份证号转18位的方法,结合实例形式分析了15位身份证号转18位的相关原理与php实现技巧,需要的朋友可以参考下
    2019-10-10
  • php 结果集的分页实现代码

    php 结果集的分页实现代码

    php结果集的分页,后面都有详细的说明。最近的php将会让你学到更多。
    2009-03-03
  • 解析PHP可变函数的经典用法

    解析PHP可变函数的经典用法

    本篇文章是对PHP可变函数的经典用法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • Laravel 5.3 学习笔记之 安装

    Laravel 5.3 学习笔记之 安装

    本文是Laravel 5.3 学习笔记系列文章的第一篇,我们来加单讲解下Laravel 5.3 的安装,有需要的小伙伴可以参考下
    2016-08-08
  • php中常见的sql攻击正则表达式汇总

    php中常见的sql攻击正则表达式汇总

    这篇文章主要介绍了php中常见的sql攻击正则表达式,实例汇总了针对各种常见的SQL语句及正则表达式原理的分析与应用,对于PHP程序设计的安全来说具有很好的参考借鉴价值,需要的朋友可以参考下
    2014-11-11
  • php Smarty 字符比较代码

    php Smarty 字符比较代码

    php Smarty 字符比较代码,需要的朋友可以参考下。
    2011-02-02
  • PHP魔术引号所带来的安全问题分析

    PHP魔术引号所带来的安全问题分析

    这篇文章主要介绍了PHP魔术引号所带来的安全问题分析,对于安全编码来说非常重要!需要的朋友可以参考下
    2014-07-07
  • 使用Linux五年积累的一些经验技巧

    使用Linux五年积累的一些经验技巧

    本篇文章是小编使用Linux五年积累的一些经验和技巧,需要的朋友参考下
    2013-06-06
  • php 7新特性之类型申明详解

    php 7新特性之类型申明详解

    在PHP7,一个新的功能,返回类型声明已被引入。返回类型声明指定的一个函数返回值的类型。下面这篇文章主要给大家介绍了php 7新特性之类型申明的相关资料,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-06-06

最新评论