php實(shí)現(xiàn)遞歸抓取網(wǎng)頁(yè)類(lèi)實(shí)例
本文實(shí)例講述了php實(shí)現(xiàn)遞歸抓取網(wǎng)頁(yè)類(lèi)的方法。分享給大家供大家參考。具體如下:
<?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; } } ?>
希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。
- php curl抓取網(wǎng)頁(yè)的介紹和推廣及使用CURL抓取淘寶頁(yè)面集成方法
- PHP抓取網(wǎng)頁(yè)、解析HTML常用的方法總結(jié)
- php結(jié)合正則批量抓取網(wǎng)頁(yè)中郵箱地址
- PHP使用CURL實(shí)現(xiàn)多線(xiàn)程抓取網(wǎng)頁(yè)
- PHP中使用file_get_contents抓取網(wǎng)頁(yè)中文亂碼問(wèn)題解決方法
- php使用curl和正則表達(dá)式抓取網(wǎng)頁(yè)數(shù)據(jù)示例
- 采集郵箱的php代碼(抓取網(wǎng)頁(yè)中的郵箱地址)
- PHP的cURL庫(kù)功能簡(jiǎn)介 抓取網(wǎng)頁(yè)、POST數(shù)據(jù)及其他
- PHP多線(xiàn)程抓取網(wǎng)頁(yè)實(shí)現(xiàn)代碼
- PHP 抓取網(wǎng)頁(yè)圖片并且另存為的實(shí)現(xiàn)代碼
- PHP抓取及分析網(wǎng)頁(yè)的方法詳解
相關(guān)文章
php自動(dòng)加載的兩種實(shí)現(xiàn)方法
php自動(dòng)加載的兩種實(shí)現(xiàn)方法,需要的朋友可以參考下。2010-06-06PHP生成不同顏色、不同大小的tag標(biāo)簽函數(shù)
看別人網(wǎng)站上面的tag都是不同顏色,不同大小的tag標(biāo)簽非常不錯(cuò),這里就分享兩個(gè)函數(shù),方便需要的朋友2013-09-09php實(shí)現(xiàn)自定義中獎(jiǎng)項(xiàng)數(shù)和概率的抽獎(jiǎng)函數(shù)示例
這篇文章主要介紹了php實(shí)現(xiàn)自定義中獎(jiǎng)項(xiàng)數(shù)和概率的抽獎(jiǎng)函數(shù),涉及php字符串、數(shù)組的概率運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-05-05php數(shù)組函數(shù)序列之a(chǎn)rray_splice() - 在數(shù)組任意位置插入元素
array_splice() 函數(shù)與 array_slice() 函數(shù)類(lèi)似,選擇數(shù)組中的一系列元素,但不返回,而是刪除它們并用其它值代替2011-11-11幾個(gè)有用的php字符串過(guò)濾,轉(zhuǎn)換函數(shù)代碼
幾個(gè)有用的php字符串過(guò)濾,轉(zhuǎn)換函數(shù),主要是一些字符的安全處理與字符串處理2012-05-05php實(shí)現(xiàn)有序數(shù)組旋轉(zhuǎn)后尋找最小值方法
在本篇文章中我們給大家詳細(xì)分享了php實(shí)現(xiàn)有序數(shù)組旋轉(zhuǎn)后尋找最小值方法,有需要的朋友們可以學(xué)習(xí)下。2018-09-09簡(jiǎn)單談?wù)刾hp浮點(diǎn)數(shù)精確運(yùn)算
如果用php的+-*/計(jì)算浮點(diǎn)數(shù)的時(shí)候,可能會(huì)遇到一些計(jì)算結(jié)果錯(cuò)誤的問(wèn)題,所以基本上大部分語(yǔ)言都提供了精準(zhǔn)計(jì)算的類(lèi)庫(kù)或函數(shù)庫(kù),比如php有BC高精確度函數(shù)庫(kù),下面我們介紹一下一些常用的BC高精確度函數(shù)使用。2016-03-03