很多站长朋友们都不太清楚php判断是否为蜘蛛,今天小编就来给大家整理php判断是否为蜘蛛,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP判断是不是爬虫的方法 2、 PHP判断访客是否是谷歌蜘蛛 如果是就不域名跳转如果不是就跳转域名 怎么实现呢 跪求啊 3、 网站程序怎么判断是访客还是蜘蛛在访问? 4、 PHP中如何调用JS代码实现判断是否是蜘蛛访问 PHP判断是不是爬虫的方法理论上是无法判断,一般可以判断浏览器代理,但是爬虫其实可以完全模拟浏览器。我网站禁止爬虫的代码如下:
//禁止OFFICE、尼姆达、蜘蛛
if (stripos($_SERVER['HTTP_USER_AGENT'],'Microsoft ')===0 ||
stripos($_SERVER['HTTP_USER_AGENT'],'Microsoft-WebDAV-MiniRedir')===0 ||
stripos($_SERVER['HTTP_USER_AGENT'],'Baiduspider')===0 ||
stripos($_SERVER['HTTP_USER_AGENT'],'Sogou Orion spider')===0 ||
stripos($_SERVER['HTTP_USER_AGENT'],'Googlebot')) exit('EXPLORER ERROR(你的浏览器出现严重错误),MAY BE INFFECT VIRUS(你的电脑可能感染病毒)!');
PHP判断访客是否是谷歌蜘蛛 如果是就不域名跳转如果不是就跳转域名 怎么实现呢 跪求啊下面是判断的函数(可以判断各种搜索引擎的):
<?php
function get_naps_bot()
{
$useragent = strtolower($_SERVER['HTTP_USER_AGENT']);
if (strpos($useragent, 'googlebot') !== false){
return 'Googlebot';
}
if (strpos($useragent, 'msnbot') !== false){
return 'MSNbot';
}
if (strpos($useragent, 'slurp') !== false){
return 'Yahoobot';
}
if (strpos($useragent, 'baiduspider') !== false){
return 'Baiduspider';
}
if (strpos($useragent, 'sohu-search') !== false){
return 'Sohubot';
}
if (strpos($useragent, 'lycos') !== false){
return 'Lycos';
}
if (strpos($useragent, 'robozilla') !== false){
return 'Robozilla';
}
return false;
}
//直接调用即可:
if( 'Googlebot' == get_naps_bot() ){
//是谷歌的不操作
}else{
//否则跳转
header("Location:跳转的地址");
}
网站程序怎么判断是访客还是蜘蛛在访问?你确定要这么做?这是明摆着欺骗蜘蛛的无知,而且它现在已经学会怎么查看是否欺骗它了。根据不同的程序有不同的实现方法,需要程序员来写。给你一个php的参考一下
<?php
$flag = false;
$tmp = $_SERVER['HTTP_USER_AGENT'];
if(strpos($tmp, 'Googlebot') !== false){
$flag = true;
} else if(strpos($tmp, 'Baiduspider') >0){
$flag = true;
} else if(strpos($tmp, 'Yahoo! Slurp') !== false){
$flag = true;
} else if(strpos($tmp, 'msnbot') !== false){
$flag = true;
} else if(strpos($tmp, 'Sosospider') !== false){
$flag = true;
} else if(strpos($tmp, 'YodaoBot') !== false || strpos($tmp, 'OutfoxBot') !== false){
$flag = true;
} else if(strpos($tmp, 'Sogou web spider') !== false || strpos($tmp, 'Sogou Orion spider') !== false){
$flag = true;
} else if(strpos($tmp, 'fast-webcrawler') !== false){
$flag = true;
} else if(strpos($tmp, 'Gaisbot') !== false){
$flag = true;
} else if(strpos($tmp, 'ia_archiver') !== false){
$flag = true;
} else if(strpos($tmp, 'altavista') !== false){
$flag = true;
} else if(strpos($tmp, 'lycos_spider') !== false){
$flag = true;
} else if(strpos($tmp, 'Inktomi slurp') !== false){
$flag = true;
}
if($flag == false){
//header("Location: url" . $_SERVER['REQUEST_URI']);
require_once("cd.htm");
// 自动转到rul 对应的网页
// $_SERVER['REQUEST_URI'] 为域名后面的路径
// 或 换成 header("Location: 具体的url");
exit();
}
else
{
require_once("news1.htm");
}
?>
PHP中如何调用JS代码实现判断是否是蜘蛛访问这个理论上是无法做到的,因为蜘蛛可以模仿得和浏览器点开完全相同。
一般的办法是判断浏览器的AGENT标志,一般蜘蛛这里比较特殊,你看看日期里面的AGENT就知道如何识别了。
我的代码如下,可以参考:
关于php判断是否为蜘蛛的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php判断是否为蜘蛛 php怎么判断是不是数字的详细内容...