1

我正在使用 Google Anayltics Reporting API v4 来查询我网站上的页面浏览量,按浏览次数最多的排序。我发现我得到了重复的条目,其中路径相同但大小写不同

DateRange dateRange = new DateRange()
{
    StartDate = startDate.ToString("yyyy-MM-dd"),
    EndDate = DateTime.Now.ToString("yyyy-MM-dd")
};

// Create the Metrics object.
Metric pageviews = new Metric {Expression = "ga:pageviews", Alias = "Pageviews"};

//Create the Dimensions object.
Dimension path = new Dimension { Name = "ga:pagePath" };

OrderBy orderby = new OrderBy {FieldName = "ga:pageviews", SortOrder = "DESCENDING"};

// Create the ReportRequest object.
ReportRequest reportRequest = new ReportRequest
{
    ViewId = viewId,  
    DateRanges = new List<DateRange>() { dateRange },
    Dimensions = new List<Dimension>() { path },
    Metrics = new List<Metric>() { pageviews },
    OrderBys = new List<OrderBy>() { orderby }
};

List<ReportRequest> requests = new List<ReportRequest>();
requests.Add(reportRequest);

// Create the GetReportsRequest object.
GetReportsRequest getReport = new GetReportsRequest() { ReportRequests = requests };

// Call the batchGet method.
GetReportsResponse response = svc.Reports.BatchGet(getReport).Execute();

foreach (var report in response.Reports)
{
    var data = report.Data.Rows.Select(x => new AnalyticsPage
    {
        Path = x.Dimensions[0],
        Views = Convert.ToInt32(x.Metrics[0].Values[0])
    });
    pages.AddRange(data);
}

当我查看我的结果时,pages[41]是“/events/tech-knowledge”(3150 次页面浏览量)并且pages[429]是“/Events/Tech-Knowledge”(200 次页面浏览量)

我可以在查询中添加一些内容以使 API 在路径字段中忽略大小写吗?我知道我可以修改我的代码以组合 path.ToLower() 相同的条目,但最好让 API 正确返回数据

4

1 回答 1

0

检查了Analytics API 参考,没有这样的现成过滤器。我建议继续您的解决方法。

于 2018-01-11T08:36:27.897 回答