Google Analytics API实例

2024-06-09 17:18
文章标签 实例 api google analytics

本文主要是介绍Google Analytics API实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用Python简单实现Google Analytics API

Google Analytics API
SEO需要经常看网站各种数据,如Visits,Keywords,landing page等,但总要登录Google Analytics(之后简称GA)查看,而且无法与其他系统数据结合。这时,就需要GA API了。GA API自动获取各种数据,不仅可以推送自定义数据,还能与其他的数据相结合。
为了更快获取周报数据,之前用Django做了自动化系统,采集了爱站和百度搜索结果页的数据,这次就加入了GA的各项数据。

1. 系统环境

系统:Ubuntu 13.10
语言:Python 2.7
操作软件:对VPS操作,并非桌面版

2. Google Developers Project创建

要创建Google Developers Project,使用project的API。

  1. 访问Google Developers Project,点击上面的“Create Project”按钮,输入PROJECT NAME并创建,如下图:
    Create Project

  2. 访问左侧边栏“APIs & auth” >> "APIs"。在右侧界面中找到“Analytics API”,使其status为ON。

  3. 访问左侧边栏“APIs & auth” >> "Consent screen"。在右侧界面中设置“EMAIL ADDRESS”和“PRODUCT NAME”。(避免出现“Error: invalid_client no application name”的错误,最后通过StactOverflow的帖子搞定)

  4. 访问左侧边栏“APIs & auth” >> "Credentials"。点击右侧“Create new Client ID”,并做如下设置:
    Create new Client ID

  5. 之后就可以得到“CLIENT ID”,“CLIENT SECRET”,以及“REDIRECT URIS”。这些是认证信息,之后会用来做认证账户使用。

3. 环境配置

运行GA API需要安装Google APIs Client Library for Python库,我直接使用了pip方式安装:

$ pip install --upgrade google-api-python-client

当然也可使用easy_install

$ easy_install --upgrade google-api-python-client

注:我在初次运行时遇到了gflags library缺失的报错,最后通过pip --upgrade python-gflags的方式解决。

4. API文件下载

访问google-api-python-client的Source页面,下载client_secrets.jsonhello_analytics_api_v3.py两个文档。这两个文件的作用是这样的:

  • client_secrets.json存储验证证书。你需要替换掉其中client_idclient_secretredirect_uris这3个字段;
  • hello_analytics_api_v3.py是简单示例文件。可运行获得2012-01-01至2012-01-15的前25个搜索关键词。这个示例文件调用了GA中Management APICore Reporting API这2个API。

你可以修改hello_analytics_api_v3.py来自定义数据:

  • 要修改其中get_top_keywords函数来设置GA的时间范围,数据纬度,细分,搜索,过滤等功能;
  • 关于数据纬度,常用的有ga:bounces、ga:pagePath、ga:visits等,更多可参见官方文档Dimensions & Metrics Reference。

5. 浏览器端验证

可能是因为我设置了Google账户二次验证,当运行hello_analytics_api_v3.py时VPS端弹出了浏览器端验证。
由于是Debian的文字浏览器,摸索了一段时间才会使用。最后因为浏览器无法运行JavaScript中断好久,直到看到服务器端提示,在运行命令后加了参数--noauth_local_webserver。之后把地址复制下来在本地电脑上打开,才最终验证成功。
需要注意的是,只要验证成功,VPS上就会有验证文件,之后可以直接获取数据。
最后获取成功的图片:
数据获取成功

备注

  1. 为了快速实现功能,本文采取了讨巧的方式,直接使用了GA API的示例文件,如有精力,建议阅读下官方指南;
  2. 虽说已经通过GA API调用了数据,但仍是入门级文章,如需深入,建议阅读GA API官方文档,并不断练习。

参考文档

  • 【英文资料】极其建议读一下Tutorial: Hello Analytics API官方文档:https://developers.google.com/analytics/solutions/articles/hello-analytics-api?hl=zh-CN
  • 【英文资料】Google APIs Client Library for Python安装文档:https://developers.google.com/api-client-library/python/start/installation
  • 【中文资料】小黑的《Python and Google Analytics API》:http://itseo.net/direction/show-139.html
  • 【中文资料】STEPHEN的《如何通过google analytics api获取数据零基础 python版》:http://www.stephensem.com/archives/318

这篇关于Google Analytics API实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1045805

相关文章

Java调用DeepSeek API的最佳实践及详细代码示例

《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

前端原生js实现拖拽排课效果实例

《前端原生js实现拖拽排课效果实例》:本文主要介绍如何实现一个简单的课程表拖拽功能,通过HTML、CSS和JavaScript的配合,我们实现了课程项的拖拽、放置和显示功能,文中通过实例代码介绍的... 目录1. 效果展示2. 效果分析2.1 关键点2.2 实现方法3. 代码实现3.1 html部分3.2

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

一分钟带你上手Python调用DeepSeek的API

《一分钟带你上手Python调用DeepSeek的API》最近DeepSeek非常火,作为一枚对前言技术非常关注的程序员来说,自然都想对接DeepSeek的API来体验一把,下面小编就来为大家介绍一下... 目录前言免费体验API-Key申请首次调用API基本概念最小单元推理模型智能体自定义界面总结前言最

JAVA调用Deepseek的api完成基本对话简单代码示例

《JAVA调用Deepseek的api完成基本对话简单代码示例》:本文主要介绍JAVA调用Deepseek的api完成基本对话的相关资料,文中详细讲解了如何获取DeepSeekAPI密钥、添加H... 获取API密钥首先,从DeepSeek平台获取API密钥,用于身份验证。添加HTTP客户端依赖使用Jav

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep

mysqld_multi在Linux服务器上运行多个MySQL实例

《mysqld_multi在Linux服务器上运行多个MySQL实例》在Linux系统上使用mysqld_multi来启动和管理多个MySQL实例是一种常见的做法,这种方式允许你在同一台机器上运行多个... 目录1. 安装mysql2. 配置文件示例配置文件3. 创建数据目录4. 启动和管理实例启动所有实例

Java function函数式接口的使用方法与实例

《Javafunction函数式接口的使用方法与实例》:本文主要介绍Javafunction函数式接口的使用方法与实例,函数式接口如一支未完成的诗篇,用Lambda表达式作韵脚,将代码的机械美感... 目录引言-当代码遇见诗性一、函数式接口的生物学解构1.1 函数式接口的基因密码1.2 六大核心接口的形态学

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加