通过每天查询一天的数据,您可以快速查询性能数据,且不会超出配额。
您必须选择要在数据中提供哪些信息:哪些搜索类型(网页、图片、视频等) 和维度(网页、查询、国家/地区或设备),以及是否按网页或媒体资源对结果进行分组。在查询网页和/或查询字符串时,部分数据可能会被丢弃(查看原因)。
概览
- 我们建议使用下述查询样式之一每天运行查询,以获取一天的数据。对一天的数据运行每日查询不应超出您的每日配额。数据通常会在 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 }, ...