我正在开发一个具有 REST API 的站点,并且我想使用 Google Analytics 事件跟踪 API 使用情况。是否有一种直接的方法可以从 Python 触发 GA 事件,而无需加载整个webbrowser
组件来发送 javascript 请求?
6 回答
这个名为 PyGA 的项目要好得多。与 github 上的“Google-Analytics for Mobile”项目不同,它有很好的文档记录并具有丰富的 API。
此处提供了 Python 中 Google-Analytics for Mobile 的开源实现:http: //github.com/b1tr0t/Google-Analytics-for-Mobile--python-
您可以通过导入“track_page_view”并为其提供适当的 WSGI 请求环境来将其集成到您自己的设置中。
SO, Generate Google Analytics events (__utm.gif requests) serverside中有一个问题。
问题是:
它似乎有点旧,没有关于如何记录事件的文档,只有页面浏览量。
...并且您想跟踪事件而不是页面浏览量。
在谷歌中搜索“服务器端谷歌分析”时,您会发现 SO 问题中提供的来源与更相关的来源相同。虽然在 php 中有一个名为Server Side Google Analytics的库来执行此操作。最后一次提交是从 2009 年 4 月 28 日开始,所以我不知道它是否正常工作或者是否可以跟踪事件(它是在 php 中,而不是在 Python 中)。
我知道有一个没有 javascript的官方谷歌分析跟踪解决方案(也可以查看他们博客中的发布说明)用于移动应用程序,它甚至带有一个php 库。也许您可以“欺骗”他们的服务并表现得像您的应用程序是一个移动应用程序来跟踪您的事件,用 Python 重写这个库?(我不知道这是否违反了谷歌的 TOS,你应该阅读它以防万一)。
恕我直言,如果谷歌分析真的是你想做你想做的事情的唯一方法并且一切都失败了,我会尝试使用网络浏览器组件。
作为最后一个资源,您可以尝试使用google 的文档创建一个简单的分析工具来跟踪您的 api 使用情况。
(如果您认为这些建议都没有用,我会尝试在谷歌上搜索“没有 javascript 的谷歌分析”。祝你好运!)
目前您可以使用Google Analytics Measurement Protocol。有一些 python 库可以发送事件,例如xoxzo.galib:
client = HitClient('UA-12345678-1')
client.send_hit('event', event_category='auth', event_action='signup')
或者google-measurement-protocol或者您可以通过本指南使用 python-requests 自己编写请求。
所有其他答案都是针对过时的ga.js
协议,这个库似乎实现了更新的universal.js
(我还没有尝试过):
https://github.com/analytics-pros/universal-analytics-python
基本上归结为: https ://gist.github.com/canburak/1593381
有关参数等的更多信息:https ://medium.com/python-programming-language/80eb9691d61f