# php判断访客是否是搜索引擎蜘蛛和向访客和爬虫显示不同的内容

*Published:* 2025-04-27
*Author:* 客服001

#### 温馨提醒

如果文章内容或图片资源失效，请留言反馈，我们会及时处理，谢谢

本文最后更新于2025年4月27日，已超过 180天没有更新



可以通过 User Agent 来判断访问者是否为爬虫, 如果是, 则以一般形式显示文章, 否则以列表形式显示文章列表. 可以用以下的 PHP 方法判断是否为爬虫：

```
function is_crawler() { 
    $userAgent = strtolower($_SERVER['HTTP_USER_AGENT']); 
    $spiders = array( 
        'Googlebot', // Google 爬虫 
        'Baiduspider', // 百度爬虫 
        'Yahoo! Slurp', // 雅虎爬虫 
        'YodaoBot', // 有道爬虫 
        'msnbot' // Bing爬虫 
        // 更多爬虫关键字 
    ); 
    foreach ($spiders as $spider) { 
        $spider = strtolower($spider); 
        if (strpos($userAgent, $spider) !== false) { 
            return true; 
        } 
    } 
    return false; 
}
```

各爬虫以访问评论由高到低进行排序. 然后通过下面的的方法向爬虫和自然人显示不同的内容:

```
<?php if(is_crawler()) { 
    // 向搜索引擎显示的内容 
} else { 
    // 向自然人显示的内容 
} ?>
```

```
function isCrawler() { 
        echo $agent= strtolower($_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 (Often spam bot)", 
                        "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", 
                        "The web archive (IA Archiver)", 
                        "Perl tool", 
                        "MJ12bot", 
                        "Netcraft", 
                        "MSIECrawler", 
                        "WGet tools", 
                        "larbin", 
                        "Fish search", 
                ); 
                foreach($spiderSite as $val) { 
                        $str = strtolower($val); 
                        if (strpos($agent, $str) !== false) { 
                                return true; 
                        } 
                } 
        } else { 
                return false; 
        } 
} 
if  (isCrawler()){ 
       echo "你好蜘蛛精！"; 
} 
else{ 
     echo "你不是蜘蛛精啊！"; 
}
```