loading

通过referrer 获取用户搜索的关键词(百度、搜狗、神马…)

通过分析各个搜索引擎的搜索代码,利用referrer 获取用户的搜索关键词,可以发现关键词藏在referrer的网址的某个参数中,比如百度的word或者wd,搜狗移动端keyword,神马移动端q,正则匹配到这些参数,获取的关键词进行解码。

var refer=document.referrer;
var grep=null;
var str=null;
var keyword=null;
if(refer.indexOf('baidu')>-1){
	if(refer.indexOf('s?word=')>-1){
		grep=/word\=.*\&/i;
		str=refer.match(grep)
		keyword=str.toString().split("=")[1].split("&")[0];
		$wd = decodeURIComponent(keyword);
	}else{
		grep=/wd\=.*\&/i;
		str=refer.match(grep)
		keyword=str.toString().split("=")[1].split("&")[0];
		$wd = decodeURIComponent(keyword);
	}
}else if(refer.indexOf('sogou')>-1){
	grep=/keyword\=.*\&/i;
	str=refer.match(grep);
	console.log(str);
	keyword=str.toString().split("=")[1].split("&")[0];
	$wd = decodeURIComponent(keyword);
}else if(refer.indexOf('sm.cn')>-1){
	grep=/q\=.*\&/i;
	str=refer.match(grep)
	keyword=str.toString().split("=")[1].split("&")[0];
	$wd = decodeURIComponent(keyword);
}else{
	console.log('NOT TO GET');
}