PHP代码实现百度统计关键词及来路推送
勾起我搞这个的兴趣是因为有个卖软件的,老是向我的百度统计后台推送引流软件广告。搜索后发现早就有人做过这方面的研究,然而随着统计代码版本升级,部分功能暂时还未解决。今天这篇 PHP 代码实现提交虚假数据给百度统计就教大家,怎么向目标网站的百度统计后台推送来源地址,关键词来源我还没解决,有知道的大佬劳烦告诉我一声,不甚感激。 首先我们先来分析下百度统计的作用原理,这个过程你可以读百度统计 js 代码,也可以使用抓包的方式。我看不懂百度统计的代码,一大片的 abcdefg…..看得脑袋痛,所以我使用浏览器抓包的方式来获取百度统计 js 的工作过程。 打开一个带有百度统计的网站,我这里就直接打开我的博客代码狗首页,然后打开浏览器的 F12 中 network 标签,准备抓包。随便打开一个链接,注意,我的网站链接都会新窗口打开,所以先用 F12 的改下 elements 标签修改下超链接跳转方式,让新窗口打开变成当前窗口打开,然后通过浏览器抓到如下的请求过程。 可以清楚得看到,一共请求了百度 3 次,点击第一次的请求地址我们可以看到真正的百度统计代码。如果你觉得你的 js 功底不错,可以尝试阅读下。第二次与第三次是向一张 gif 发起的请求,搜索后网友告诉我是为了防止出现跨域请求,所以伪装成一张图片。点开我们可以看到如下的请求参数。 第二次请求参数: cc=1 ck=1 cl=24-bit ds=1600×900 vl=761 ep=77772,2590 et=3 fl=27.9 ja=0 ln=zh-cn lo=0 lt=1560213157 rnd=1965430449 si=338f36c03fc36a54e79fbd2ebdae9589 su=https://www.daimadog.com/wp-admin/post-new.php v=1.2.51 lv=3 sn=58284 u=https://www.daimadog.com/ 第三次请求参数: cc=1 ck=1 cl=24-bit ds=1600×900 vl=276 et=0&fl=27.9 ja=0 ln=zh-cn lo=0 lt=1560213157 rnd=281282742 si=338f36c03fc36a54e79fbd2ebdae9589 su=https://www.daimadog.com/ v=1.2.51 lv=3 sn=58362 ct=!! tt=wordpress 手机验证码注册插件源码分享-代码狗 通过两次参数对比,我们可以发现有部分参数不一样,但大部分都是一样的。这些参数对应的含义大概如下: cc 不知 ck?是否支持 cookie 1:0 cl?颜色深度 如 24-bit ds?屏幕尺寸,如 1600×900 vl 不知 ep?初始值为’0′,时间变量,反映页面停留时间,格式大概是:现在时间-载入时间+“,”+另一个很小的时间值 et?初始值为’0′,如果 ep 时间变量不是 0 的话,它会变成其他 fl?flash 版本 ja?java 支持 1:0 ln?语言 zh-cn lo 不知 lt 时间戳 rnd 随机数(1 开头有 10 位 其它开头只有 9 位) si 你的百度统计 id su 来源地址 v 百度统计 js 版本号 lv 不知 sn 5 位随机数 u 当前页地址 ct 不知,默认!! tt 当前页标题 当我们首次进入网站被统计时,发现百度统计只提交了 2 次请求(如下),因此,我们只需模拟这两次请求就能在百度统计后台看到了。 PHP 源码:<?php visbd(); function visbd(){ $bdid='338f36c03fc36a54e79fbd2ebdae9589'; $bdjs = 'https://hm.baidu.com/hm.js?'; $bdgif = 'https://hm.baidu.com/hm.gif?'; $params=[ 'cc'=>1, 'ck'=>1, 'cl'=>'24-bit', 'ds'=>'1600x900', 'vl'=>'1760', //'ep'=>'1551962,70574', //'et'=>3, 'fl'=>27.9, 'ja'=>0, 'ln'=>'zh-cn', 'lo'=>0, 'lt'=>time(), //'rnd'=>rand(1000000000,7000000000), 'si'=>$bdid, 'su'=>'https://www.23456789.com', 'v'=>'1.2.51', 'lv'=>3, 'sw'=>'代码', //'sn'=rand(10000,99999), 'u'=>'https://www.daimadog.com/' ]; $url1=$bdjs.$bdid; echo $url1.'</br>'; curl_get($url1); $params1=$params; $params1['ep']=rand(7000000,9999999).','.rand(10000,400000); $params1['et']='3'; $params1['rnd']=rand(1000000000,7000000000); $params1['sn']=rand(10000,99999); ksort($params1); $str=urldecode( http_build_query($params1)); $url2=$bdgif.$str; echo $url2.'</br>'; curl_get($url2); $params2=$params; $params2['et']='0'; $params2['ct']='!!'; $params2['tt']='WordPress优化'; ksort($params2); $str1=urldecode( http_build_query($params2)); $url3=$bdgif.$str1; echo $url3.'</br>'; curl_get($url3); } function curl_get($url){ $curl = curl_init(); curl_setopt($curl,CURLOPT_URL,$url); curl_setopt($curl,CURLOPT_HEADER,1); curl_setopt($curl,CURLOPT_RETURNTRANSFER,CURLOPT_SSL_VERIFYPEER,false); curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,false); $data = curl_exec($curl); curl_close($curl); return $data; } ?> 百度统计后台效果: 我模拟了谷歌、2345、23456789 这三个地址的来源,在后台也看到了这三条统计,说明我们的代码是 OK 的,搜索词这个东西我研究了一阵没找到怎么来的,有知道的大佬告诉我一声! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |