Почему запрос измерения ga: clientId возвращает пустой массив при использовании python3 google analytics v4? - PullRequest
1 голос
/ 01 апреля 2020

Попытка получить clientId из Google Analytics в настоящее время через python код:

def get_report(analytics):
    return analytics.reports().batchGet(
        body={
            "reportRequests": [
                {
                    "viewId": VIEW_ID,
                    "dateRanges": [{"startDate": "7daysAgo", "endDate": "today"}],
                    "dimensions": [{"name": "ga:pagePath"}, {"name": "ga:clientId"}],
                    "metrics": [{"expression": "ga:pageViews"}, {"expression": "ga:sessions"},
                                {"expression": "ga:avgTimeOnPage"}]
                }]
        }
    ).execute()

, этот код возвращает пустой массив, если я удаляю:

{"name": "ga:clientId"}

Он работает нормально, и возвращает все данные. Также, используя Java, я могу получить номер clientID в порядке таким образом:

Dimension clientId = new Dimension().setName("ga:clientId"); 

ReportRequest request = new ReportRequest()
        .setViewId(VIEW_ID)
        .setDateRanges(Arrays.asList(dateRange))
        .setMetrics(lstMetrics)
        .setDimensions(lstDim);

    ArrayList<ReportRequest> requests = new ArrayList<ReportRequest>();
    requests.add(request);

    // Create the GetReportsRequest object.
    GetReportsRequest getReport = new GetReportsRequest()
        .setReportRequests(requests);

    // Call the batchGet method.
    GetReportsResponse response = service.reports().batchGet(getReport).execute();

    // Return the response.
    return response;

Но python не может выдать тот же ответ данных.

...