Google 分析 - 提取用户 Activity 历史和每日数据

Google Analytics - Extract User Activity Historical and Daily Data

我一直在尝试提取并遍历用户 Activity API 以提取历史数据并为每个 GA 配置文件创建每日提要,但是 运行 进入“每天每个视图(配置文件)10,000 个请求”配额限制,因为我每天有大约 50,000 个用户。

我当前的脚本逐一循环遍历每个 CLIENT_ID 并提取 user_activity 如下所示并遵循此文档:https://developers.google.com/analytics/devguides/reporting/core/v4/rest/v4/userActivity/search

## List of CLIENT_IDs extracted from batch.get() reports API
CLIENT_ID = ['x','y','z']
START_DATE = '2020-01-01'
END_DATE = '2022-01-01'

    for client_id in CLIENT_ID:

        data = analytics.userActivity().search(
            body={
                "viewId": VIEW_ID,
                "pageSize": 1000000000,
                "user": {
                    "type": "CLIENT_ID",
                    "userId": str(client_id),
                },
                'dateRange': {"startDate": str(START_DATE),
                              "endDate": str(END_DATE)
                              }
                             ,
            }
        ).execute()
        print(data)

是否有更好的方法来提取此历史数据,而无需 运行 进入每个配置文件的 API 配额限制并同时对多个用户执行 ping 操作?我还尝试在 GCP 中创建多个配置文件以绕过配额限制,但没有成功。

在 GA3 的前端中,无法提取此原始数据,因此非常感谢任何帮助。

非常感谢!

Google 分析 API 有三种类型的配额。

  • 基于用户的配额
  • 基于视图的配额
  • 基于项目的配额。

基于视图的配额

基于视图的配额基于您正在访问的每个视图。它们无法扩展。

参见:limits-quotas

基于用户的配额

基于用户的配额基于访问数据的用户,可以是您用来访问数据的用户帐户的授权,也可以是系统的 IP 地址 运行代码。这些配额通常用于防洪以确保您的系统不会 运行 快速。

无法扩展基于用户的配额。

基于项目的配额。

基于项目的配额是将您的项目定义为一个整体的配额。基于项目的默认配额为 50k,可以扩展。

所以回答你的问题。每天每个视图(配置文件)10,000 个请求的配额是基于视图的配额,无法扩展。您最好的选择是减少请求,只请求您需要的数据。你也可以在几天内完成。

如果您请求它的观看次数超过 5 次并且达到基于项目的配额,您可以申请延期。

还有一个将数据导出到 BigQuery 的选项,它消除了限制,但它并非没有我记得看到的:Set up BigQuery Export它也不是 python 解决方案。