이번에는 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['HTTP_USER_AGENT']); if (strpos($useragent, 'googlebot') !== false){ return 'Google'; } if (strpos($useragent, 'baiduspider') !== false){ return 'Baidu'; } if (strpos($useragent, 'msnbot') !== false){ return 'Bing'; } if (strpos($useragent, 'slurp') !== false){ return 'Yahoo'; } if (strpos($useragent, 'sosospider') !== false){ return 'Soso'; } if (strpos($useragent, 'sogou spider') !== false){ return 'Sogou'; } if (strpos($useragent, 'yodaobot') !== false){ return 'Yodao'; } return false; } function nowtime(){ $date=date("Y-m-d.G:i:s"); return $date; } $searchbot = get_naps_bot(); if ($searchbot) { $tlc_thispage = addslashes($_SERVER['HTTP_USER_AGENT']); $url=$_SERVER['HTTP_REFERER']; $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 중국어 웹사이트의 기타 관련 기사를 참조하세요!