如何通过google analytics api获取数据零基础 python版

2013年8月23日 | 标签:

首先要思考下为什么google要开发api呢,因为google的产品用户很多,他们的需求也是各种各样的,打个比方adwords,用户可以下载google adwords editors这样的桌面软件去操作,也可以通过google adwords的界面去操作,但是用户同时也要操作baidu 推广助手,有技术的客户就想 能不能自己开发一款软件 打通这2个产品google adwords和百度推广,同时可以操作,所以api接口就给了这样的可能,这是和同类型产品对接,方便用户统一操作,

还有一个例子,google analytics自定义运用,每周都需要发报告给客户,虽然google analytics有自动报告功能,但是如果有报告固定的格式,每周都是人共去google analytics里面去拉数据 然后填进去的话, 完全可以用web或者客户端的方式自动去取数据,然后填充到模板里面(模板可以通过web方式整合成html代码 再通过api把html代码中的数字替换)再加个发信函数,这样每个星期都可以有一份图文并茂 并且随时调整模板的报告邮件了,同时你甚至可以同时集合ga和adwords Baidu的数据这样就省掉大量人工发信的时间。这里api的作用是整合其他信息,一起制作需要的产品,节约时间

未来的社会是开发的社会,只有把产品的接口开放出来,用户安装自己的想法加以利用就可以让产品使用的人更加方便

 

Google analytics的数据是支持通过api按需导出 甚至你可以制作成email或者整合在你的网站后台中,这些都只是需要api,再开始之前先介绍下

什么是api呢 你可以理解就是通用的函数 可以调用google的服务的数据 例如google  analytics数据,

什么是token,token就是一串帐号密码,不过这个是随机变动的,因为在互联网中传输信息,所以最好有一套随机变动的密码来保证信息的安全,

什么是Python,python是一个很简单的程序语言,安装下就可以用就和vb一样 但是他很强壮 据说只要电脑能做的事 他就能做 无所不能 和硬件交互也没问题的

什么是Json 文件 是一种类似txt文件的一种文本文件,这里用来保存机密的信息例如你的帐号密码

什么是Google api library库,电脑安装了python只能说是安装了一个基本的语言环境,你要实现某些功能还需要程序,google把这些可以操作自己服务的基础数据的文件打包成库文件 记住这里的库并不是所以的google的服务的程序都在里面,只是定义了一个基本的接口和传输方法,你要运行google analytics 还是需要定义一些函数来操作的 然后再引用google api的 库文件

什么是客户端 google的 api分多种 你既可以通过web 的应用来获取数据(要绑定运行的网站的域名,主要也是为安全) 也可以通过本地的程序,这里为了演示方法 我用的本地程序,所以我这里的客户端是桌面程序应用

 

下图是我在windows xp下面获得ga的数据的

 reuslts1

 

 

说下流程把

 

liucheng

  1. 开通API功能及相应的权限

这个这部分主要是因为要和google的api需要自动去开通

,首先默认情况下google是没有开放这个服务的,需要首先去告诉google 我是开发者,我要做一个项目,这个项目里面需要用到某些api功能,你给我开通,

https://code.google.com/apis/console/ 打开后

第一步是创建一个项目,

createproject

,创建项目的时候要一个名字

输入一些品牌信息,因为你还是需要用户去授权才能看的到的同时要要选择你的客户端,是web程序还是桌面程序,还是手机段,因为不同的项目代表满足不同的需求的程序,用到的api也是不一样的

 whenaccessshowingbrandinformation

这里我用的是google analytics api testing, 选择应用类型同时要要选择你的客户端,是web程序还是桌面程序,还是手机段,因为不同的项目代表满足不同的需求的程序,用到的api也是不一样的

whichdevicewilluseasclientsider

然后去到api控制台 打开google analytics的api开关,

turnonapi

然后我还有去申请开通认证功能 这里相当于使用这个api的帐号密码,

createaccess

 

google api只是提供一个通用的操作平台,但是用户能操作什么类型的哪个网站的数据还是和用户自身的权限有关系,这句话理解为 通过api程序,你可以导出,重组,任何网站的数据,但是前提是用户通过认证的时候先要有这个网站的权限。

 

可能有人会问 这里的api的帐号密码有什么用呢,其实这里是和你的操作限制挂钩,每隔project用到的每个google的服务每天都是有一个限额,比如google analytics是5w次,一天他只能帮你服务5w次,如果你还需要更多 你就需要买了,所以这个api的帐号密码就是你的额度挂钩的,如果你的帐号密码泄漏,别人就可以用你的额度,相当于用你的钱, 没有api的帐号密码那每个人每天使用的次数就没法限制了,

 

 

申好api和获取api帐号密码后,可以下载一个json文件,里面包含了你的api帐号密码信息,后面的analytics的api 例子用也有这个json文件你要替换的。相当于把api的帐号密码单独放一个文件保管,

clienttokengot

手中有了钥匙(api的帐号密码文件),

 2 安装api依赖的库文件 因为用的python 所以是python的库文件

要想能运行api还需要一些基本的函数库文件,这里因为我选的是python

https://developers.google.com/api-client-library/python/start/installation

googleapilibrariesforchoose

quickstartin

所以我要去安装他对于的库文件包,这里可能用一个教easy install的工具来安装,不信的是easy install也不是python自带的,  所以我闲要去安装easy install,

 

 2.1安装库文件闲安装easy install这个文件

还在这个工具的页面上有win 32版本我安装下,

https://pypi.python.org/pypi/setuptools/0.6c11

setuptoolsinstalforgooglelibary

自动会找到python的目录

setuptoolschooseinstalpath

然后会安装在python的目录下script的文件中,

setuptoolsinstallfile

然后我cmd进入这个文件夹

通过easy install 安装 安装google api python client side easyinstallapilibary

 

 

 

他会自动在lib文件下也就是库文件下个一个子文件夹site-packages安装,这里他是安装的一个google_api_python_client-1.2-py2.7.egg

eggiszipfileforgooglelibary

其实这个egg文件是一个压缩包,你用winrar打开就可以看的到里面几个文件夹 这就是基本的python库文件,一个叫apiclient是放基本文件,发起链接函数,返回错误函数还有一个oauth2client是放所有和安全授权有关的uritemplate里面放的是空的。

所有的api的使用都是先和google负责api的服务器发起通讯,这里要用到apiclient文件,开始使用的时候闲验证身份,这里用的oauth2client,然后就是创建服务对象这里用的还是apiclient 然后操作对方及方法

在安装python的库文件的地方 就可以直接下载几个例子了

https://developers.google.com/api-client-library/python/start/installation

这里我们下载下analytics的例子文件

 

 

tryexample

https://code.google.com/p/google-api-python-client/downloads/list

 smaplelist

下载解压以后 有很多google服务的例子 这里我就只用google analytics的文件夹 打开后 替换下client_sercrets文件

里面存放的api的帐号密码 用来确定你的身份和不要超过限制的

这个文件sample3

 

 

 

 

替换下json文件然后 在cmd中 运行下就可以了

 

firsttry

 

所以后

注意点就是api的链接很不稳定 因为是在中国    firsttry1lgoin   会先跳转到google网站验证你身份 是否可以获得.

 

 

 

 

 

 

 

 

 

 

 然后就可以获得了