google-analytics - 如何从谷歌分析 API 获取少数 (10) 个 URL 的页面浏览量?

标签 google-analytics google-analytics-api

如何从谷歌分析 API 获取少数 (10) 个 URL 的页面浏览量?

$requests = [];
    foreach($urls as $url) {


        $dateRange = new Google_Service_AnalyticsReporting_DateRange();
        $dateRange->setStartDate($start_date);
        $dateRange->setEndDate($end_date);


        $sessions = new Google_Service_AnalyticsReporting_Metric();
        $sessions->setExpression("ga:pageviews");
        $sessions->setAlias("pageviews");

        $dimensionFilter = new Google_Service_AnalyticsReporting_DimensionFilter();
        $dimensionFilter->setDimensionName('ga:pagePath');
        $dimensionFilter->setOperator('BEGINS_WITH');
        $dimensionFilter->setExpressions([$url]);


        $dimensionFilterClause = new Google_Service_AnalyticsReporting_DimensionFilterClause();
        $dimensionFilterClause->setFilters([$dimensionFilter]);


        $request = new Google_Service_AnalyticsReporting_ReportRequest();
        $request->setViewId($this->view_id);
        $request->setDateRanges($dateRange);
        $request->setMetrics([$sessions]);
        $request->setDimensionFilterClauses([$dimensionFilterClause]);
        $requests[] = $request;
    }

    // Finally, we perform one large query for every URL address mentioned
    $body = new Google_Service_AnalyticsReporting_GetReportsRequest();
    $body->setReportRequests([$requests]);

    $reports = $this->analytics->reports->batchGet( $body );

如果 URL 计数超过 5 个,则抛出异常并显示消息:

There are too many requests in the batch request. The max allowed is 5



我该怎么做?
GA API 版本 4。

最佳答案

答:每批最多可以有 5 个报告。无法在单个批处理请求中发送 10 个报告。

reportRequests[] object(ReportRequest) Requests, each request will have a separate response. There can be a maximum of 5 requests. All requests should have the same dateRanges, viewId, segments, samplingLevel, and cohortGroup.



可能的工作比比皆是:

这意味着如果你有 10 个,你可能不得不将它分成两个请求。您可以查看您的过滤器表达式,我认为您可以在其中添加更多。 (提示:添加 ga:pagepath 维度,以便您可以将数据响应映射到它在过滤器中命中的页面)

Strings or regular expression to match against. Only the first value of the list is used for comparison unless the operator is IN_LIST. If IN_LIST operator, then the entire list is used to filter the dimensions as explained in the description of the IN_LIST operator.



注意:我实际上没有测试过多个过滤器,但我认为它应该可以工作。

关于google-analytics - 如何从谷歌分析 API 获取少数 (10) 个 URL 的页面浏览量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40356028/

相关文章:

google-analytics - Google会分析具有相同基本URL的多个页面

rest - Apache Nifi : use OAuth 2. 0 访问 Google Analytics API

ASP.Net codebehind - 获取谷歌付费广告信息

php - 从 Google Analytics 中删除页面

google-analytics - 高级分割和自定义报告的巨大差异

php - codeigniter 谷歌分析 + 谷歌图表

c# - 服务器应用程序的 GData 身份验证

php - 在Chart.js图表​​中从Google Analytics(分析)加载数据

asynchronous - 谷歌分析 : Mix asynchronous and synchronous tracking to track downloads using events

java - 如何使用 Core Reporting API 的获取查询进行分析来对月份(即 2015 年 9 月至 2016 年 1 月)进行排序?