• 技术文章 >后端开发 >php教程

    php 判断访客是否为搜索引擎蜘蛛的函数代码

    高洛峰高洛峰2017-01-21 11:57:55原创1066
    /** 
    * 判断是否为搜索引擎蜘蛛 
    * 
    * @author Eddy 
    * @return bool 
    */ 
    function isCrawler() { 
    $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; 
    } 
    }

    网上倒是能搜到一大把,不过都是千篇一律的复制来复制去的,也不够全面,我这里整理了一份比较全面的代码:

    function is_spider(){ 
    $robot = 0; 
    $USER_AGENT = strtolower($_SERVER['HTTP_USER_AGENT']); 
    if(strpos($USER_AGENT,"bot")) $robot = 1; 
    if(strpos($USER_AGENT,"spider")) $robot = 1; 
    if(strpos($USER_AGENT,"slurp")) $robot = 1; 
    if(strpos($USER_AGENT,"mediapartners-google")) $robot = 1; 
    if(strpos($USER_AGENT,"fast-webcrawler")) $robot = 1; 
    if(strpos($USER_AGENT,"altavista")) $robot = 1; 
    if(strpos($USER_AGENT,"ia_archiver")) $robot = 1; 
    if($robot == 1){ 
    //do something 
    } 
    return ''; 
    }

    更多php 判断访客是否为搜索引擎蜘蛛的函数代码相关文章请关注PHP中文网!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:搜索引擎蜘蛛
    上一篇:PHP对象实例化单例方法 下一篇:php 向访客和爬虫显示不同的内容
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• 细思极恐?关于in_array的第3个参数• 急那位老师帮小弟我看看这段代码 • PHP登录跳转,该怎么处理 • php验证session 报错了解决办法 • 着急!快快快!!!!
    1/1

    PHP中文网