我正在使用搜索控制台API v3为某些Property提取Search Analytics数据。 我正在使用googleapiclient库(Python)进行API调用。 制作API请求的Python脚本:
from googleapiclient import sample_tools
service, flags = sample_tools.init(['https://example.com/'], 'webmasters', 'v3', __doc__, __file__,
# parents=[argparser],
scope='https://www.googleapis.com/auth/webmasters.readonly')
rowlimit = 5000 #initialised variable to pass values of rowLimit and startRow
startrow = 0
request = {
'startDate': '2017-05-10',
'endDate': '2017-05-10',
'dimensions': ['date','query'],
'rowLimit': rowlimit,
'aggregationType': 'byProperty',
'startRow': startrow
}
response = execute_request(service, 'https://example.com/', request)
我们得到了回应。现在有一个我们无法给出的限制 rowLimit> 5000。
现在每次请求我们都不会获得5000条记录。因此,对于下一次迭代,我将按记录设置startRow值超出我在第一次请求中获得的值。
即。 startrow = startrow + record_count_in_first_request
所以,第二次迭代将有
STARTROW:STARTROW
rowLimit:5000
使用这种方法,我可以获得特定日期范围的所有结果数据。
但现在我面临另一个问题。我使用API提取的度量值与控制台平台(UI)值不匹配 我检查了某个日期范围内的点击次数和展示次数,它与相同日期范围的UI值不匹配。 为什么你认为会发生这种情况?
我使用时再次出现这种情况 '尺寸':['日期','查询'] 另一方面,当我使用时 '尺寸':['日期','页'] 然后我得到了正确的结果。我已经使用控制台UI检查了结果。控制台搜索API的这种行为非常混乱。以前是否有人遇到类似的问题。有没有数据样本? 如果您需要有关我所面临问题的更多信息,请与我们联系。 谢谢你的时间。
答案 0 :(得分:1)
简而言之,当您在维度中使用page
并且未在API调用中指定aggregationType
时,聚合类型将由API服务确定。
aggregationType
确定汇总点击次数和展示次数的方式。当您使用dimensions: date, query
时,API会默认使用byProperty
聚合类型,而date, page
会自动选择byPage
类型。它是documented here。
请仔细阅读this documentation,了解byProperty
(或网站)与byPage
之间的区别。