当前位置: 首页 > 编程笔记 >

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

孙钱青
2023-03-14
本文向大家介绍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程序设计有所帮助。

 类似资料:
  • 本文向大家介绍C#实现抓取和分析网页类实例,包括了C#实现抓取和分析网页类实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现抓取和分析网页类。分享给大家供大家参考。具体分析如下: 这里介绍了抓取和分析网页的类。 其主要功能有: 1、提取网页的纯文本,去所有html标签和javascript代码 2、提取网页的链接,包括href和frame及iframe 3、提取网页的title等

  • 主要内容:导入所需模块,拼接URL地址,向URL发送请求,保存为本地文件,函数式编程修改程序本节讲解第一个 Python 爬虫实战案例:抓取您想要的网页,并将其保存至本地计算机。 首先我们对要编写的爬虫程序进行简单地分析,该程序可分为以下三个部分: 拼接 url 地址 发送请求 将照片保存至本地 明确逻辑后,我们就可以正式编写爬虫程序了。 导入所需模块 本节内容使用 urllib 库来编写爬虫,下面导入程序所用模块: 拼接URL地址 定义 URL 变量,拼接 url 地址。代码如下所示:

  • 本文向大家介绍php递归json类实例,包括了php递归json类实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php递归json类的实现方法。分享给大家供大家参考。 具体实现代码如下: 希望本文所述对大家的PHP程序设计有所帮助。

  • 本文向大家介绍PHP实现递归无限级分类,包括了PHP实现递归无限级分类的使用技巧和注意事项,需要的朋友参考一下 在一些复杂的系统中,要求对信息栏目进行无限级的分类,以增强系统的灵活性。那么PHP是如何实现无限级分类的呢?我们在本文中使用递归算法并结合mysql数据表实现无限级分类。 递归,简单的说就是一段程序代码的重复调用,当把代码写到一个自定义函数中,将参数等变量保存,函数中重复调用函数,直到达

  • 本文向大家介绍java简单网页抓取的实现方法,包括了java简单网页抓取的实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java简单网页抓取的实现方法。分享给大家供大家参考。具体分析如下: 背景介绍 一 tcp简介   1 tcp 实现网络中点对点的传输   2 传输是通过ports和sockets   ports提供了不同类型的传输(例如 http的port是80)     1

  • 本文向大家介绍ASP.NET抓取网页内容的实现方法,包括了ASP.NET抓取网页内容的实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了ASP.NET抓取网页内容的实现方法。分享给大家供大家参考。具体实现方法如下: 一、ASP.NET 使用HttpWebRequest抓取网页内容 二、ASP.NET 使用 WebResponse 抓取网页内容 希望本文所述对大家的C#程序设计有所帮助