首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

谷歌分析python脚本- HelloAnalytics

"HelloAnalytics" 是一个用于与 Google Analytics API 进行交互的 Python 脚本示例。以下是一个基本的 "HelloAnalytics" 脚本的步骤和代码示例,用于获取并打印网站的访问数据。

步骤 1: 设置 Google Analytics API

  1. 创建 OAuth 2.0 客户端 ID
  • 访问 Google Cloud Console。
  • 创建一个新项目或选择一个现有项目。
  • 启用 Google Analytics Reporting API
  • 创建 OAuth 2.0 客户端 ID,并下载 JSON 文件(通常命名为 client_secret.json)。
  1. 安装 Google Client Library for Python
代码语言:javascript
复制
pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib

步骤 2: 编写 Python 脚本

以下是一个简单的 "HelloAnalytics" 脚本示例:

代码语言:javascript
复制
import os
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
from google.auth.transport.requests import Request
from googleapiclient.discovery import build

# 如果你修改了这些范围,请删除token.json文件。
SCOPES = ['https://www.googleapis.com/auth/analytics.readonly']

def main():
    """Shows basic usage of the Analytics Reporting API.
    Prints the number of sessions for the last 7 days for a specified channel.
    """
    creds = None
    # 文件token.json存储了用户的访问和刷新令牌,它是自动创建的
    # 当授权流程第一次完成时。
    if os.path.exists('token.json'):
        creds = Credentials.from_authorized_user_file('token.json', SCOPES)
    # 如果没有可用的(有效的)凭据,则让用户登录。
    if not creds or not creds.valid:
        if creds and creds.expired and creds.refresh_token:
            creds.refresh(Request())
        else:
            flow = InstalledAppFlow.from_client_secrets_file(
                'client_secret.json', SCOPES)
            creds = flow.run_local_server(port=0)
        # 保存授权令牌以供将来使用
        with open('token.json', 'w') as token:
            token.write(creds.to_json())

    # 构建Analytics服务对象
    service = build('analyticsreporting', 'v4', credentials=creds)

    # 调用Analytics Reporting API V4.
    response = service.reports().batchGet(
        body={
            'reportRequests': [
                {
                    'viewId': 'YOUR_VIEW_ID',  # 替换为你的视图ID
                    'dateRanges': [{'startDate': '7daysAgo', 'endDate': 'today'}],
                    'metrics': [{'expression': 'ga:sessions'}],
                    'dimensions': [{'name': 'ga:channelGrouping'}]
                }]
        }
    ).execute()

    # 打印响应。
    print('报告:')
    for report in response.get('reports', []):
        columnHeader = report.get('columnHeader', {})
        dimensionHeaders = columnHeader.get('dimensions', [])
        metricHeaders = columnHeader.get('metricHeader', {}).get('metricHeaderEntries', [])

        for row in report.get('data', {}).get('rows', []):
            dimensions = row.get('dimensions', [])
            dateRangeValues = row.get('metrics', [])

            for header, dimension in zip(dimensionHeaders, dimensions):
                print(header + ': ' + dimension)

            for i, values in enumerate(dateRangeValues):
                print('Date range (' + str(i) + ')')
                for metricHeader, value in zip(metricHeaders, values.get('values')):
                    print(metricHeader.get('name') + ': ' + value)

if __name__ == '__main__':
    main()

步骤 3: 运行脚本

  1. YOUR_VIEW_ID 替换为你的 Google Analytics 视图 ID。
  2. 运行脚本:
代码语言:javascript
复制
python hello_analytics.py

注意事项

  • 确保 client_secret.jsontoken.json 文件位于脚本运行的同一目录中。
  • 如果你更改了授权范围,请删除 token.json 文件并重新运行脚本以重新授权。

这个脚本是一个基础的起点,你可以根据需要扩展它来获取更详细的分析数据或进行更复杂的操作。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Python脚本分析CPU使用情况

    在这篇文章中,我将讨论一个工具,用以分析Python中CPU使用情况。CPU分析是通过分析CPU执行代码的方式来测量代码的性能,以此找到代码中的不妥之处,然后处理它们。...测量CPU使用率 对于这篇文章,我将主要使用与内存分析中使用脚本相同的脚本,具体如下: ?...其余的时间花在Python中的list.append(22.33%)和range(11.51%)中。 作为一个简单的脚本,我们只需要重写我们的脚本,具体的如下所示: ?...pprofile 根据作者说明,pprofile是一个“线程测量和统计的纯python分析器”。...使用它,您可以看到与Python脚本相关的以下一个或全部: 1、CPU使用图 2、代码分析 3、内存图 4、代码热图 要使用它,您需要先通过pip添加它:pip install

    1.4K50

    apache日志分析脚本

    Perl分析Apache/Nginx日志 (2009-6-22) http://www.lazysa.com/2009/05/480.html 功能简述: 统计出日志里一个或多个页面总共访问的次数...分析过程: Apache单个日志文件800M。...最初程序使用Python编写,按行来统计,分别使用in(最慢)和index方法去查找,然后使用了正则匹配,程序运行时间从最初的1分50多秒优化到1分10秒左右,参考了qyb博客中提到的gc.disable...然后随意用了Perl写了一个,用了最土鳖的这样的按行分析,最后正则匹配,然后++,速度竟然在40-50秒之间,惊叹!后来经过shucho指点,在正则部分采用了预编译,效果那是相当惊人!...\)/$1/g; 正则 参考 perl-正则 ◆ 常用分析web日志的命令 (2009-6-22) http://www.lazysa.com/2009/05/319.html

    84330
    领券