>백엔드 개발 >PHP 튜토리얼 >PHP에서 검색엔진 크롤링 과정을 기록하는 방법에 대한 자세한 설명

PHP에서 검색엔진 크롤링 과정을 기록하는 방법에 대한 자세한 설명

php中世界最好的语言
php中世界最好的语言원래의
2018-05-18 14:17:541541검색

이번에는 php 레코드 검색 인덱스 엔진 크롤링 프로세스 방법에 대해 자세히 설명하겠습니다. php 레코드 검색 엔진 크롤링 프로세스에서 주의 사항 은 무엇입니까?

다음은 전체 코드입니다.

//记录搜索引擎爬行记录 $searchbot = get_naps_bot(); 
if ($searchbot) 
{ $tlc_thispage = addslashes($_SERVER['HTTP_USER_AGENT']); 
$url = $_SERVER['HTTP_REFERER']; 
$file = WEB_PATH.'robotslogs.txt'; 
$date = date('Y-m-d H:i:s'); 
$data = fopen($file,'a'); 
fwrite($data,"Time:$date robot:$searchbot URL:$tlc_thispage/r/n"); 
fclose($data);
}

WEB_PATH는 index.PHP 아래에 정의된 루트 디렉터리 경로입니다. 이는 robotslogs.txt 파일이 루트 디렉터리에 위치한다는 의미입니다.

get_naps_bot()을 통해 스파이더 크롤링 기록을 가져온 다음 addlash를 통해 처리하고 데이터를 변수 $tlc_thispage에 저장합니다.

fopen은 robotslogs.txt 파일을 열고 fwrite 함수를 통해 데이터를 쓴 다음 fclose 함수를 통해 닫습니다.

필요없다고 생각해서 홈페이지의 코드를 삭제해서 효과예시가 없습니다.

PS: 각 검색 스파이더의 크롤링 기록을 얻기 위한 PHP 코드

다음 검색 엔진을 지원합니다: Baidu, Google, Bing, Yahoo, Soso, Sogou, Yodao 크롤링 웹사이트 기록

코드:

<?php 
/**
* 获取搜索引擎爬行记录
* edit by www.jb51.net
*/
function get_naps_bot() 
{ 
$useragent = strtolower($_SERVER[&#39;HTTP_USER_AGENT&#39;]); 
if (strpos($useragent, &#39;googlebot&#39;) !== false){ 
return &#39;Google&#39;; 
} 
if (strpos($useragent, &#39;baiduspider&#39;) !== false){ 
return &#39;Baidu&#39;; 
} 
if (strpos($useragent, &#39;msnbot&#39;) !== false){ 
return &#39;Bing&#39;; 
} 
if (strpos($useragent, &#39;slurp&#39;) !== false){ 
return &#39;Yahoo&#39;; 
} 
if (strpos($useragent, &#39;sosospider&#39;) !== false){ 
return &#39;Soso&#39;; 
} 
if (strpos($useragent, &#39;sogou spider&#39;) !== false){ 
return &#39;Sogou&#39;; 
} 
if (strpos($useragent, &#39;yodaobot&#39;) !== false){ 
return &#39;Yodao&#39;; 
} 
return false; 
} 
function nowtime(){ 
$date=date("Y-m-d.G:i:s"); 
return $date; 
} 
$searchbot = get_naps_bot(); 
if ($searchbot) { 
$tlc_thispage = addslashes($_SERVER[&#39;HTTP_USER_AGENT&#39;]); 
$url=$_SERVER[&#39;HTTP_REFERER&#39;]; 
$file="www.jb51.net.txt"; 
$time=nowtime(); 
$data=fopen($file,"a"); 
fwrite($data,"Time:$time robot:$searchbot URL:$tlc_thispage\n"); 
fclose($data); 
} 
?>
!

이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

추천 자료:

PHP가 로컬 json 파일을 읽는 방법은 무엇입니까?

PHP가 json 개체의 값을 출력하는 방법은 무엇입니까?

위 내용은 PHP에서 검색엔진 크롤링 과정을 기록하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.