Google analytics 如何从google analytics API中获取页面浏览量占少数(10)个URL?

Google analytics 如何从google analytics API中获取页面浏览量占少数(10)个URL?,google-analytics,google-analytics-api,Google Analytics,Google Analytics Api,如何从google analytics API中获取页面浏览量占少数(10)个URL $requests = []; foreach($urls as $url) { $dateRange = new Google_Service_AnalyticsReporting_DateRange(); $dateRange->setStartDate($start_date); $dateRange->setEndDate($end

如何从google analytics 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,则引发异常并显示消息:

批处理请求中的请求太多。允许的最大值为5

我怎么能做到?
GA API版本4。

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

请求,每个请求 将有一个单独的答复。最多可以有5个请求。 所有请求应具有相同的日期范围、视图ID、段、, 采样级别,和同级组

可能的工作很多:

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

要匹配的字符串或正则表达式。只有第一个值 除非运算符在\u列表中,否则列表的值用于比较。如果 在_LIST操作符中,则整个列表用于过滤 尺寸如in_列表运算符说明中所述


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

谢谢您的回答。是的,我可以在每2个批处理请求中拆分10个URL。但这并不好。我认为API有机会解决这个问题。我不能在列表中使用表达式,因为我必须获得所有URL版本的页面浏览计数(^/page,^/page?utm_source=1,^/page?utm_source=2)。因此,我使用BEGINS_WITH。API无法为您解决此问题。如文档中所述,每批只能发送五份报告请求。不,我不认为谷歌会为你增加这个数字。我可以在下一次与球队交谈时向他们提出这个问题,但我真的认为这五个是相似的。如果您添加ga:pagepath,您将获得按日期和页面分组的结果,这将使用过滤器为您提供所需的信息。我的正则表达式已经生锈了,但我仍然认为这是可能的。