Javascript Analytics代码操作(G. Analytics)

Chr*_*ede 6 javascript google-analytics data-manipulation

对于我的工作,我正在研究Google Analytics的有效性(主要是关于flippa的经过验证的报告) - >看看是否有可能完全伪造G. Analytics(一个简单的是不会削减它)!

我将G. Analytics代码修改如下:

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-19629541-5']);
_gaq.push(['_setAllowHash', false]);
_gaq.push(['b._setAccount', 'UA-19629541-5']);
_gaq.push(['b._setAllowHash', true]);

for (var i=0;i<=10;i++) {
  _gaq.push(['_trackPageview']);
  _gaq.push(['b._trackPageview']);
}
  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async =   true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') +         '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
Run Code Online (Sandbox Code Playgroud)

现在,当您运行它时,它将产生多个访问和访问者.您可以看到__utma上的第二个数字会针对每个网页浏览进行更改,该数字是visitorId,当它更改时它意味着您获得了新的访问者

问题是我现在得到的统计数据如下:

  • 访问量:1,785
  • 独特访客:1,781
  • 浏览量:2,188
  • 页数/访问量:1.23
  • 平均.访问时间:00:00:03
  • 跳出率:96.13 %%
  • 新访问量:99.78%

请不要平均下降.访问时间!

在他们与此类似之前:

  • 访问量:135
  • 独特访客:118
  • 浏览量:383
  • 页数/访问量:2.84
  • 平均.访问时间:00:04:22
  • 跳出率:57.78%
  • %新访问量:68.89%

现在我的问题是:我如何修改G. Analytics代码(如果完全可行),使其看起来与此类似:

  • 访问量:135*10 = 1350
  • 独特访客:118*10 = 1180
  • 浏览量:383*10 = 3830
  • 页数/访问量:2.84
  • 平均.访问时间:00:04:22
  • 跳出率:57.78%
  • %新访问量:68.89%

所以基本上增加了访问量,独特访问者,网页浏览量10倍,但其他统计数据保持不变.

http://jsfiddle.net上的例子非常受欢迎

PS:抱歉我的英语不好(不是我的母语)

Edu*_*rdo 1

Google Analytics 在服务器端定义了 timeOnPage 和 timeOnSite,代码基于您发送的页面浏览之间经过的时间。由于所有这些都是在服务器端完成的,因此无法伪造这一点,除非您按照您希望伪造的时间来间隔浏览量。

您还需要为每个跟踪器发送 1 个以上的综合浏览量,才能获得正确的页面/访问量。目前,每次您在 2 个跟踪器之间切换时,您都会重置 cookie,并且之前的访问者 ID 将永远丢失。

所以你想做这样的事情:

  • 创建第一个跟踪器
  • 激发页面浏览量
  • 等待 1 到 2 秒
  • 激发另一个页面浏览量
  • 80% 的情况下,可能会在 1 或 2 秒后触发第三次综合浏览,以接近正确的平均值。
  • 创建一个新的跟踪器
  • 重复冲洗

我想说,您可能想引入更多随机性,但仍保持相同的平均值。例如,为了获得正确的 BounceRate,您需要有 57% 的访问触发单个综合浏览量。为了获得正确的新访客指标,您需要使用这些旧 ID 之一返回,但在新访问中生成回访者。您可以通过删除 __utmb 或 __utmc cookies 来触发新的访问,或者在新的页面浏览之间等待超过 30 分钟。

正如您所看到的,您想要伪造的数字与真实数字越接近,就越难。

现在,这对于生活在单页脚本中来说有点不切实际。因为它可能需要几秒钟才能完成,并且您可能想要模拟数千次。所以也许最好使用像phantom.js这样的无头浏览器来创建它这样的无头浏览器来创建它,您可以触发多个同时实例以获得您想要的结果。

我想知道您打算从这些内容中提取什么样的分析。根据分析的类型,您已经拥有的已经足够了,或者也许为了更好的模拟而付出的努力并不值得深入了解。