黑帽联盟

 找回密码
 会员注册
查看: 1331|回复: 0
打印 上一主题 下一主题

[技术文章] 利用python来统计来自google的访问量

[复制链接]
yun 黑帽联盟官方人员 

920

主题

37

听众

1364

积分

超级版主

Rank: 8Rank: 8

  • TA的每日心情
    奋斗
    2019-10-18 11:20
  • 签到天数: 678 天

    [LV.9]以坛为家II

    相信大部分站长圈的朋友都在使用Google Analytics(以下简称GA),并通过GA分析得出我们所需要的报表,如:访问次数、跳出率、自然流量、各种数据的占比等,当然我们知道可以在GA的信息中心和自定义报表中设置好一些我们常用的报表,方便浏览。但始终是web端浏览模式,一些数据难以很快速的做出统计,甚至自定义模版发送到指定邮箱。OK,HERE WE GO,MADE IT!

    前期需求:
    1. 一个Google帐号,并开通Google Analytics服务,最好里面有数据,这样方便测试;
    2. 国内线路请寻找代理(Goagent、VPN等);
    3. Python 2.7.x 环境及IDE(强烈推荐Editplus、Sublime TEXT);
    4. Windows、Linux、Mac测试完全没问题;

    首先我们要用到Google Analytics API,那么如何开通GA API服务,并完成Console配置,请看下图及解释:

    登录GA系统,然后访问Google Console(https://code.google.com/apis/console/),会出现以下图提示:
    201306242119483418.png

    我们点击Create Project,创建一个新的项目。创建后的控制台会跳转到如下界面:
    201306242121506231.png


    随后我们选择Services,进入下图,并把Google Analytics API选项卡打开,注意:后面的Notes,每天5W次请求,基本足够用了。
    201306242123069200.png


    然后打开左侧边栏的API Access,我们创建一个,并得到以下资源信息:
    201306242124048262.png


    当我们再返回Overview的时候,应该是这样的图片,表示Analytics API已经开通:
    201306242124198262.png


    以上是GA API开通的环节,接下来用Python调用GA API来做个小演示:

    首先在https://code.google.com/p/gdata-python-client/downloads/list 下载一个Gdata模块并安装(注:清理host文件,否则会出现404错误!),windows演示如下:
    201306242132399356.png

    设置path环境变量,如果已经设置或非windows用户不用设置,然后输入命令 python setup.py install进行安装,或者你也可以拷贝atom、gdata目录到lib/site-packages即可,推荐安装。
    201306242132492950.png

    安装模块成功后,就可以执行脚本,我这里有个例子的python脚本,大家可以根据自己想要的维度指标进行更改,经过多次测试数据是完全准确的。
    (例如:ga:bounces、ga:bounces、ga:pagePath、ga:visits等,请根据自己的需求增删,官方说明:https://developers.google.com/an ... e/dimsmets?hl=zh-CN)

    #-*- coding:utf-8 -*-
    import gdata.analytics.client, atom
    SOURCE_APP_NAME='xiaohei'
    my_client=gdata.analytics.client.AnalyticsClient(source=SOURCE_APP_NAME)

    my_client.client_login(
        'id',
        'pw',
        source=SOURCE_APP_NAME,
        service=my_client.auth_service,
        account_type='GOOGLE'
    )


    data_query=gdata.analytics.client.DataFeedQuery({
        'ids':'ga: PROFILEID',
        'dimensions':'ga:source',
        'metrics':'ga:pageviews',
        'start-date':'2017-1-20',
        'end-date':'2017-11-20',
        'prettyprint':'true'
        })
    feed=my_client.GetDataFeed(data_query)
    result=[(x.name,x.value) for x in feed.entry[0].metric]
    #print result
    for i in result:
    print '浏览量:'+i[1]

    201306242132584825.png


    以上就是利用python调用GA数据的例子,大家请根据自己的需求来做完善,例如制作图表、发送指定邮箱等,如果感觉到速度很慢,可以使用Goagent、vpn、国外的VPS上运行。


    帖子永久地址: 

    黑帽联盟 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与黑帽联盟享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和黑帽联盟的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、黑帽联盟管理员和版主有权不事先通知发贴者而删除本文

    您需要登录后才可以回帖 登录 | 会员注册

    发布主题 !fastreply! 收藏帖子 返回列表 搜索
    回顶部