js如何判断访问是来自搜索引擎(蜘蛛人)还是直接访问

以下javascript脚本代码可以实现判断访问是否来自搜索引擎。

代码如下:

介绍的这个JS判断蜘蛛来源的方法脚本是写在body的onload里面的。即页面加载时进行判断。代码如下:

body {onload:expression(
if(window.name!="Yang"){
var str1 = document.referrer;
str1 = str1.toLowerCase();
var str6 = 'google.';
var str7 = 'baidu.';
var str4 = 'yahoo.';
var str8 = 'youdao.';
var str9 = 'sogou.';
var str5 = 'soso.';
if(str1.indexOf(str7)>0 || str1.indexOf(str6)>0 || str1.indexOf(str4)>0 || str1.indexOf(str3)>0 || str1.indexOf(str8)>0 || str1.indexOf(str9)
 
>0 || str1.indexOf(str5)>0 && "zh-cn"==navigator.systemLanguage)
{
self.location='http://www.abc.com/';
window.name="Yang";
}
 
}
);}

这个JS判断蜘蛛来源方法不太好用。特别是在需要判断更多蜘蛛来源时代码写起来比较麻烦。

JS正则表达式判断来路搜索引擎指定跳转网址

var regexp=/\.(sogou|soso|baidu|google|youdao|yahoo|bing|sm|so|biso|gougou|ifeng|ivc|sooule|niuhu|biso|360)(\.[a-z0-9\-]+){1,2}\//ig;
var where =document.referrer;
if(regexp.test(where))
{
window.location.href="跳转指定网址";
}

通过Js判断搜索引擎来路的代码则如下

一段php判断搜索引擎的代码


手机端别忘了 sm、 sogou。

基本上也差不多了,如果你有更好的代码,可以留言.

你可能感兴趣的:(js如何判断访问是来自搜索引擎(蜘蛛人)还是直接访问)