CrawlerDetect는 user agent
및 http_from
헤더를 통해 봇/크롤러/스파이더를 감지하기 위한 PHP 클래스입니다. 현재 1,000개의 봇/스파이더/크롤러를 감지할 수 있습니다.
composer require jaybizzle/crawler-detect
use JaybizzleCrawlerDetectCrawlerDetect;$CrawlerDetect = new CrawlerDetect;// 현재 '방문자'의 사용자 에이전트를 확인하십시오.if($CrawlerDetect->isCrawler()) {// 크롤러 사용자 에이전트가 감지된 경우 true}// 사용자 에이전트를 stringif로 전달합니다. ($CrawlerDetect->isCrawler('Mozilla/5.0 (호환; Sosospider/2.0; +http://help.soso.com/webspider.htm)')) {// 크롤러 사용자 에이전트가 감지된 경우 true}// 일치하는 봇의 이름을 출력합니다(있는 경우)echo $CrawlerDetect->getMatches() ;
CrawlerDetect가 감지하지 못한 봇/스파이더/크롤러 사용자 에이전트를 찾으면 Fixtures/Crawlers.php
의 $data
배열에 정규식 패턴이 추가된 풀 요청을 제출하고 실패한 사용자 에이전트를 tests/crawlers.txt
에 추가하세요. .
실패할 경우, 발견한 사용자 에이전트로 이슈를 생성하면 우리가 거기서부터 문제를 처리하겠습니다. :)
이것을 Laravel과 함께 사용하려면 Laravel-Crawler-Detect를 참조하세요.
Symfony 2/3/4와 함께 이 라이브러리를 사용하려면 CrawlerDetectBundle을 확인하세요.
이 라이브러리를 YII2 프레임워크와 함께 사용하려면 yii2-crawler-Detect를 확인하세요.
NodeJS 또는 ES6 애플리케이션 기반에서 이 라이브러리를 사용하려면 es6-crawler-Detect를 확인하세요.
Python 프로젝트에서 이 라이브러리를 사용하려면 크롤러 감지를 확인하세요.
JVM 프로젝트(Java, Scala, Kotlin 등 포함)에서 이 라이브러리를 사용하려면 CrawlerDetect를 확인하세요.
.net 표준(.net 코어 포함) 기반 프로젝트에서 이 라이브러리를 사용하려면 NetCrawlerDetect를 확인하세요.
Ruby on Rails 또는 Ruby 기반 애플리케이션과 함께 이 라이브러리를 사용하려면crawler_Detect gem을 확인하세요.
Go와 함께 이 라이브러리를 사용하려면crawlerDetect 모듈을 확인하세요.
이 클래스의 일부는 뛰어난 MobileDetect를 기반으로 합니다.