目标
我们的目标是获取用户的分布范围,以日期和应用版本为维度,以此推算用户分布比例对ECPM和广告收入的影响。
文章内容
准备工作
启用API
首先,访问 Google Cloud 服务,在API和服务入口中选择正确的应用,启用 Google Analytics Data API v1。
创建服务凭证
在导航栏中找到 IAM 与管理,切换到服务账号,创建服务账号。在密钥 tab页面,添加新密钥,添加完毕后生成新的凭证下载json。保存好这个凭证,后面会用到。同时,记住生成的邮件地址。
注意:请确保你已经切换到正确的应用。
添加GA权限
打开 GA 管理后台,在这里,进入管理 – 设置页面,点击 账号访问权限管理,在弹出的页面中,添加新的账号,把刚才记录的电子邮件地址,输入到电子邮件输入框中,选择好权限后,确定完成添加。
下载客户端/SDK
Python 客户端地址在 GitHub 上可以找到。
更多示例
更多的示例可以在 GitHub 上找到。
API说明
官方文档在这里 ,如果文档显示成了中文,切记切换回到英文版。
使用
克隆 python 示例代码
在命令行中运行以下命令:
git clone https://github.com/googleapis/python-analytics-data.git
然后,使用 PyCharm 打开克隆的文件夹 python-analytics-data,IDE 将自动创建好虚拟目录,准备运行。
激活虚拟环境
运行 venv/scripts/activate.bat
文件,激活环境。激活后,命令行提示是这样滴:(venv) E:\works\python-analytics-data>
安装依赖
在激活环境后,直接执行以下命令,安装依赖:
pip install google-analytics-data google-auth-oauthlib
然后,执行 python setup.py
。
修改认证文件
将上面下载的认证文件信息,导出到环境变量中,在命令行提示符中,Windows 平台cmd上执行以下命令:
set GOOGLE_APPLICATION_CREDENTIALS="CREDENTIALS.json文件路径"
对于 Mac或者其他 Linux 平台,执行以下命令:
export GOOGLE_APPLICATION_CREDENTIALS="CREDENTIALS.json文件路径"
注意一些路径、双引号等问题,注意:python 寻找文件的开始路径是工程目录,而不是当前目录。
添加代理
Google 的服务都需要代理才能访问,命令行修改环境变量,Windows 平台cmd中执行以下命令:
set http_proxy=http://127.0.0.1:7890 & set https_proxy=http://127.0.0.1:7890
添加id
在准备执行的代码中,找到property_id="YOUR-GA4-PROPERTY-ID"
将其中 YOUR-GA4-PROPERTY-ID 替换成 Google Analytics 的应用 ID,比如 319925804。
测试
切换目录到 snippets,执行quickstart.py,运行以下命令:
cd samples/snippets python quickstart.py
然后,观察运行结果。
按国家输出用户信息
构建维度与指标,根据版本过滤,运行以下 Python 代码:
# property_id = "YOUR-GA4-PROPERTY-ID" # [START analyticsdata_run_report_initialize] client = BetaAnalyticsDataClient() # [END analyticsdata_run_report_initialize] # [START analyticsdata_run_report] request = RunReportRequest( property=f"properties/{property_id}", dimensions=[Dimension(name="country")], metrics=[Metric(name="activeUsers"), Metric(name="newUsers"), Metric(name="totalRevenue"), Metric(name="totalUsers")], dimension_filter=FilterExpression( filter=Filter( field_name="appVersion", string_filter=Filter.StringFilter(value="1.5.4"), ) ), date_ranges=[DateRange(start_date="2020-05-01", end_date="today")], ) response = client.run_report(request) # [END analyticsdata_run_report]
直接执行,输出信息:
dimension_values { value: "Bangladesh" } metric_values { value: "149" } metric_values { value: "131" } metric_values { value: "0.792976" } metric_values { value: "157" }
获取到的数据,与实际使用图表使用可能有差异,需要前端在使用数据时,做一些数据转换。
如何得到自定义事件数量
以前以为是获取不到,但实际上是可以的,根据GA 后台中的探索功能演示,可以从获取到,Demision,使用 eventName,Metrics 使用 eventValue,即可。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。