跟踪用户并在第二方站点上收集分析

时间:2011-06-15 11:04:01

标签: javascript python django analytics tracking

我有一个Python / Django支持的网站,为客户提供服务。使用我的服务的所有客户只需在其页面中包含“单个”JS标记。一切正常,但我需要在客户端进行一些跟踪。客户可以使用他们自己的跟踪系统,例如GA或其他什么。

我需要收集以下指标并将其发回给我的Django应用。每个客户端都有一个唯一的密钥,因此我知道哪些客户端,指标来自哪个。是否可以收集以下指标:

  • 的IP地址
  • 浏览器信息
  • 操作系统信息
  • 网页网址
  • 推荐人网址
  • 语言

这些与Support Details上的非常相似,似乎很容易处理。

我还想检查以下指标,但我很少失去如何解决这个问题,因为JS从未成为我的强项。

  • 新访者或回访者
  • 访问次数
  • 页面停留了多长时间
  • 他们最后一次访问该页面是什么时候

是否有脚本可以实现此目的?如果是的话,有人可以指点我吗?

是否可以通过客户端嵌入其页面的脚本执行上面提到的操作。由于XSS和跨域请求,是否存在任何限制?

谢谢。

1 个答案:

答案 0 :(得分:0)

如果您愿意,甚至可以使用自己的GA。

让客户端在每个页面视图上通过AJAX向您的网站发出_POST或_GET请求。

修改:

用户从您的网站(mysite.com)重定向到另一个网站(externalsite.com),然后您将用户发送到此特定网页:http://externalsite.com/page/21.html#ui=12345,此处要保留的是#ui=12345

现在外部网站运行了一个Javascript(jQuery)代码片段来执行此操作:

var hash = window.location.hash;
var data = '<script src="http://mysite.com/stats?ui='+hash+'"></script>';
$('body').append(data);

这可以克服您的XSS问题,然后您可以将您的stats页面记录到用户的UI +代理+ IP +时间的数据库中,并使用它进行所有类型的数学运算。