이 글은 주로 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!