通过每天查询一天的数据,您可以快速查询性能数据,且不会超出配额。
您必须选择要在数据中提供哪些信息:哪些搜索类型(网页、图片、视频等) 和维度(网页、查询、国家/地区或设备),以及是否按网页或媒体资源对结果进行分组。在查询网页和/或查询字符串时,部分数据可能会被丢弃(查看原因)。
概览
- 我们建议使用下述查询样式之一每天运行查询,以获取一天的数据。对一天的数据运行每日查询不应超出您的每日配额。数据通常会在 2-3 天后提供;您可以通过针对过去 10 天运行按日期分组的简单查询来了解最新的可用数据。在编写查询时:
- 选择是按网页还是资源对结果进行分组。
- 选择是希望在查询中使用更完整的计数还是更多维度。注意:您必须使用两步流程查询搜索结果呈现数据(AMP、蓝色链接、富媒体搜索结果等)。
- 通过重新运行同一查询来逐页浏览结果,将请求中的
startRow
值增加 25,000,直到看到最后一页(包含 0 行的响应)。 - (可选)使用另一个
type
参数运行同一查询。
以下是单个查询的伪代码示例。您可以每天针对需要数据的
每个 type
值运行一次此操作。
int maxRows = 25000; // Current max response size
int i = 0;
do {
response = Request(startDate = 3_days_ago,
endDate = 3_days_ago,
... add dimensions, type ...
rowLimit = maxRows,
startRow = i * maxRows);
i++;
… // Do something with the response data.
} while (response.rows.count() != 0); // Page through all result rows
数据量限制
除了 API 用量配额之外,“搜索分析”方法每天最多提供 5 万行数据,每种搜索类型(网页、图片等,按点击次数排序)。
查询详情
按网页分组
为了获得准确的计数,您必须省略网页和查询维度,例如:
"startDate": "2018-06-01",
"endDate": "2018-06-01",
"dimensions": ["country", "device"],
"type": "web",
"aggregationType": "byPage"
startDate
/endDate
:通过选择同一日期来选择一个 1 天时间段。dimensions
:可以选择添加country
和/或device
。type
:根据需要在单独的查询中枚举 每个type
值。aggregationType
:必须为byPage
。
如需获取更多详细信息(包括网页和/或查询信息),但代价是会丢失一些数据,请运行如下查询:
"startDate": "2018-06-01",
"endDate": "2018-06-01",
"dimensions": ["page", "query", "country", "device"],
"type": "web"
startDate
/endDate
:通过选择同一日期来选择一个 1 天时间段。dimensions
:包含page
。可以选择包含query
、country
或device
的任意组合。type
:根据需要在单独的查询中枚举 每个type
值。
按资源分组
为了获得准确的计数,您必须省略网页和查询维度,例如:
"startDate": "2018-06-01",
"endDate": "2018-06-01",
"dimensions": ["country", "device"],
"type": "web"
startDate
/endDate
:通过选择同一日期来选择一个 1 天时间段。dimensions
:可以选择添加country
和/或device
。type
:根据需要在单独的查询中枚举 每个type
值。
如需获取更多详细信息(包括查询、国家/地区和/或设备信息),但会丢失一些数据,您可以运行如下所示的查询:
"startDate": "2018-06-01",
"endDate": "2018-06-01",
"dimensions": ["query", "country", "device"],
"type": "web"
startDate
/endDate
:通过选择同一日期来选择一个 1 天时间段。dimensions
:可以选择添加query
、country
或device
的任意组合。type
:根据需要在单独的查询中枚举 每个type
值。
按网页或属性对结果进行分组
当您按网页(而非资源)对结果进行分组时,展示次数、点击次数、排名和点击率的计算方式会有所不同。了解详情。
请求更多详细信息时,为什么会丢失数据?
当您按网页和/或查询分组时,我们的系统可能会丢弃一些数据,以便能够在合理的时间内使用合理数量的计算资源计算结果。
获取搜索结果呈现数据
搜索结果呈现不能以列与任何其他维度一起提供。因此,如果您想查看自己网站的搜索结果呈现信息,必须遵循以下流程:
- 指定
searchAppearance
作为唯一的维度,该维度将按搜索结果呈现类型对所有数据进行分组,而不包含其他维度。 - (可选)运行第二个查询,按第 1 步中列出的某个搜索结果呈现类型进行过滤,然后向该查询添加任何所需的维度(网页、国家/地区、查询等)。
若要检索有关多种搜索结果呈现类型的数据,您必须针对第 1 步中列出的每种搜索结果呈现类型运行一次第二步。
第一个查询:
获取您网站上的搜索结果呈现类型列表。
{
"startDate": "2018-05-01",
"endDate": "2018-05-31",
"type": "web",
"dimensions": [
"searchAppearance"
]
}
成效:
您的网站类型为 INSTANT_APP、AMP_BLUE_LINK 等。
"rows": [
{
"keys": [
"INSTANT_APP"
],
"clicks": 443024.0,
"impressions": 4109826.0,
"ctr": 0.10779629113251997,
"position": 1.088168452873674
},
{
"keys": [
"AMP_BLUE_LINK"
],
"clicks": 429887.0,
"impressions": 1.7090884E7,
"ctr": 0.025152999692701676,
"position": 7.313451603790653
},...
第二个查询:
按第 1 步中找到的某种搜索结果呈现类型以及您喜欢的任何维度(网页、设备等)进行过滤。在这里,我们按 AMP_BLUE_LINK 进行过滤。
{
"startDate": "2018-05-01",
"endDate": "2018-05-31",
"type": "web",
"dimensions": [
"device" // and/or page, country, ...
],
"dimensionFilterGroups": [
{
"filters": [
{
"dimension": "searchAppearance",
"operator": "equals",
"expression": "AMP_BLUE_LINK"
}
]
}
]
}
成效:
按设备类型细分的 AMP_BLUE_LINK。
"rows": [
{
"keys": [
"MOBILE"
],
"clicks": 429887.0,
"impressions": 1.7090783E7,
"ctr": 0.025153148337323107,
"position": 7.31339517914422
},
{
"keys": [
"DESKTOP"
],
"clicks": 0.0,
"impressions": 66.0,
"ctr": 0.0,
"position": 12.257575757575758
},
...