ホームページ  >  に質問  >  本文

javascript - 如何通过JS获取百度来源关键词?

以前通过document.referrer以前能获取来百度来源搜索关键词,
最近则只能获取到,http://www.baidu.com/link?url=mDvCD8sPO6xyKSQgfoLZ6xVeHaCQHf6TrahyiTYCcGrrCmvnZDOs7LbX2dlGQQSVImU6ou9RXe7sc7FVOSzpw_

JS有什么办法呢?各种统计工具不知道是怎么实现的

ringa_leeringa_lee2771日前498

全員に返信(2)返信します

  • 阿神

    阿神2017-04-10 15:01:09

    这是百度为了防止我们获取到用户的数据来源而对网址和搜索关键词进行了加密,http://www.baidu.com/link实现的是302跳转,目前百度已多次更新加密算法,很难找到一个一劳永逸的破解办法。

    返事
    0
  • 巴扎黑

    巴扎黑2017-04-10 15:01:09

    有一种是可以获取的,如下:

    https://www.baidu.com/baidu.php?sc.5imK000s ... &ck=5042.5.103.252.517.459.274.337&shh=www.baidu.com&sht=47018152_dg&us=4.0.1.0.1.301.0.18&wd=%E8%B4%B5%E9%87%91%E5%B1%9E&issp=1&f=8&ie=utf-8&rqlang=cn&tn=47018152_dg&inputT=5699&oq=d&bc=110101
    

    百度跳转链接如上,其中 wd 参数的值,就是要找的关键词编码。
    Javascript代码对字符串进行解析:

    var arr  = str.split('&').slice(1);
    var tmpObj = {};
    for(var i=0; i<arr.length; i++){
      var tmpArr = arr[i].split('=');
      tmpObj[tmpArr[0]] = tmpArr[1];
    }
    var resultStr =  decodeURI(tmpObj.wd); // decodeURI('%E8%B4%B5%E9%87%91%E5%B1%9E');
    

    resultStr 获得百度搜索框内的字符。

    返事
    0
  • キャンセル返事