js怎样获取搜索引擎搜索关键词?

JavaScript023

js怎样获取搜索引擎搜索关键词?,第1张

js获取搜索引擎搜索关键词有两种方法可以实现:

第一种方法:

var str1="" 

var str2= "" 

var refer=document.referrer 

var sosuo=refer.split(".")[1] 

var grep=null 

var str=null 

var keyword=null 

var skey="xx" 

var ykey="" 

switch(sosuo){ 

  case "baidu": 

    grep=/wd\=.*\&/i 

    str=refer.match(grep) 

    keyword=str.toString().split("=")[1].split("&")[0] 

    //console.log(decodeURIComponent(keyword)) 

 ykey=decodeURIComponent(keyword) 

    addCookie('key',decodeURIComponent(keyword),1) 

 //alert(decodeURIComponent(keyword)) 

  break 

  case "google": 

    grep=/&q\=.*\&/i 

    str=refer.match(grep) 

    keyword=str.toString().split("&")[1].split("=")[1] 

    //console.log(decodeURIComponent(keyword)) 

 ykey=decodeURIComponent(keyword) 

    addCookie('key',decodeURIComponent(keyword),1) 

  break 

  case "sogou": 

    grep=/query\=.*\&/i 

    str=refer.match(grep) 

    keyword=str.toString().split("&")[1].split("&")[2] 

    //console.log(decodeURIComponent(keyword)) 

 ykey=decodeURIComponent(keyword) 

    addCookie('key',decodeURIComponent(keyword),1) 

 //alert(decodeURIComponent(keyword)) 

  break 

  default: 

  addCookie('key','',1) 

var ckey=(getCookie('key')) 

//alert(ckey) 

if(ykey.indexOf(skey)>-1) 

}else 

function deleteCookie(name){ 

var date=new Date() 

date.setTime(date.getTime()-10000) 

document.cookie=name+"=v expires="+date.toGMTString() 

function getCookie(name){ 

var strCookie=document.cookie 

var arrCookie=strCookie.split(" ") 

for(var i=0i < arrCookie.lengthi++){ 

var arr=arrCookie[i].split("=") 

if(arr[0]==name)return arr[1] 

return "" 

function addCookie(name,value,expiresHours){ 

var cookieString=name+"="+escape(value) 

//判断是否设置过期时间 

if(expiresHours>0){ 

var date=new Date() 

date.setTime(date.getTime+expiresHours*3600*1000) 

cookieString=cookieString+" expires="+date.toGMTString() 

document.cookie=cookieString 

document.write(ykey) 

if(ykey=="") 

{} 

else 

 document.write("") 

}

第二种方法:

function getDomainQuery(url) {   

    var d = []   

    var st = url.indexOf('//', 1)   

    var _domain = url.substring(st + 1, url.length)   

    var et = _domain.indexOf('/', 1)   

    d.push(_domain.substring(1, et))   

    d.push(_domain.substring(et + 1, url.length))   

    return d   

}   

function route() {   

    var eg = []   

    eg.push(['baidu', 'wd'])   

    eg.push(['google', 'q'])   

    eg.push(['soso', 'w'])   

    eg.push(['yodao', 'q'])   

    eg.push(['bing', 'q'])   

    eg.push(['yahoo', 'q'])   

    eg.push(['sogou', 'query'])   

    eg.push(['gougou', 'search'])   

    eg.push(['360', 'q'])   

    var dq = getDomainQuery(document.referrer)   

    var keyword=null   

    var grep=null   

    var str=null   

    for(var el in eg){   

        var s = eg[el]   

        var DandQ=String(s).split(",") //字符分割   

        if (dq[0].indexOf(DandQ[0])>0){   

            eval("grep=/"+DandQ[1]+"\=.*\&/i")   

            str = dq[1].match(grep)   

            keyword = str.toString().split("=")[1].split("&")[0]   

            keyword = decodeURIComponent(keyword)   

            alert(keyword)   

            return false   

        }   

    }   

}   

route()

需要准备的材料分别有:电脑、html编辑器、浏览器。

1、首先,打开html编辑器,新建html文件,例如:index.html,编写问题基础代码。

2、将index.html的<button>标签中的onclick属性调整为:onclick="tanchuan()"。

3、浏览器运行index.html页面,此时点击btn按钮就会执行tanchuan()函数中的条件语句了。

微软必应搜索 的网页背景图片一直比较高大上,每天都会更新。正好最近做自己的 一款app 的时候苦于闪屏页不知道用什么图片,就正好直接拿过来用了。 其实很简单,只要使用抓包工具抓到 Bing 网站图片背景的接口就可以了。这里我以 Fiddler 为例。 打开 Fiddler , 再打开 必应搜索 主页,我这里分析的是国内版的域名, http://cn.bing.com ,而不是 https://www.bing.com ,后者是走 https 的,抓包可能存在一些问题。 看一下上面这张截图,我们很容易找到这样一条 GET 请求,显然就是请求背景图片的。拿到完整的 URL : http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&nc=1491812144433&pid=hp&video=1 。 Fiddler 看起来是真的累眼,可以在 PostMan 中测试一下: 这样就很明朗了。通过这样一个 GET 请求我们就可以拿到背景图片的链接地址了。看一下其中的参数: 解析json取出 url 字段,拼接上 host 就可以得到完整的图片 url了:http://cn.bing.com/az/hprichbg/rb/ArcticFoxSibs_ZH-CN7417451993_1920x1080.jpg注意还有一个 urlbase 字段,是不含分辨率的,在后面拼接上你需要的分辨率就可以了。我是用作手机上的,在后面拼上 _480x800.jpg 即可。 仅支持以下几个分辨率: 如果你需要一些图片素材,也可以从这里获取。