HTTP_USER_AGENT を使用して、それがスパイダーであるかどうかを判断できます。検索エンジンのスパイダーには独自の兆候があり、その一部を以下に示します。
function is_crawler() {- $userAgent = strto lower($_SERVER['HTTP_USER_AGENT']);
- $spiders = array(
- 'Googlebot', // Google クローラー
- 'Baiduspider', // Baidu クローラー
- 'Yahoo! Slurp', // Yahoo クローラー
- 'YodaoBot', // Youdao クローラー
- 'msnbot' // Bing クローラー
- // その他のクローラー キーワード
- );
- foreach ($spiders as $spider) {
- $spider = strto lower($spider);
- if (strpos($userAgent, $spider) !== false) {
- return true;
- }
- }
- return false;
- }
-
コードをコピー
以下の PHP コードにはさらにスパイダーのロゴが含まれています
function isCrawler() {- echo $agent= strto lower($_SERVER['HTTP_USER_AGENT']);
- if (!empty($agent)) {
- $ SpiderSite= array(
- "TencentTraveler",
- "Baiduspider+",
- "BaiduGame",
- "Googlebot",
- "msnbot",
- "Sosospider+",
- "Sogou Web Spider",
- "ia_archiver",
- "Yahoo! Slurp" 、
- "YoudaoBot"、
- "Yahoo Slurp"、
- "MSNBot"、
- "Java (スパムボットであることが多い)"、
- "BaiDuSpider"、
- "Voila"、
- "Yandex bot"、
- "BSpider"、
- " twiceler」、
- 「Sogou Spider」、
- 「Speedy Spider」、
- 「Google AdSense」、
- 「Heritrix」、
- 「Python-urllib」、
- 「Alexa (IA Archiver)」、
- 「Ask」、
- 「Exabot」 "、
- "Custo"、
- "OutfoxBot/YodaoBot"、
- "yacy"、
- "SurveyBot"、
- "legs"、
- "lwp-trivial"、
- "Nutch"、
- "StackRambler"、
- " archive (IA Archiver)",
- "Perl ツール",
- "MJ12bot",
- "Netcraft",
- "MSIECrawler",
- "WGet tools",
- "larbin",
- "Fish search",
- );
- foreach ($spiderSite as $val) {
- $str = strto lower($val);
- if (strpos($agent, $str) !== false) {
- return true;
- }
- }
- } else {
- return false ;
- }
- }
- if (isCrawler()){
- echo "こんにちは、スパイダー! ";
- }
- else{
- echo "あなたは蜘蛛の精霊ではありません! ";
- }
-
コードをコピー
|