我正在使用Google Costume Search API。我遇到的问题是,我发现Google API的结果与直接搜索结果之间存在一些不一致。例如,当我从API搜索Android时,它会说:
....
"request": [
{
"title": "Google Custom Search - Android",
"totalResults": "16600000",
"searchTerms": "Android",
"count": 10,
"startIndex": 1,
"inputEncoding": "utf8",
"outputEncoding": "utf8",
"safe": "off",
"cx": "013036536707430787589:_pqjad5hr1a"
}
]
},
...
其中说" 16600000"结果。但是当我直接搜索Android时,它给了我"大约1,010,000,000"结果。在某些情况下,这种不一致性要大得多。是什么原因?有什么想法吗?
我理解API和主要搜索引擎可能适用于不同的组件。但这种差异似乎很大。我很好奇,如果是这样的话。
答案 0 :(得分:2)
我刚刚进行了相同的搜索,总结果显示为" 877,000,000"它与您提供的数字都不匹配。
结果的数量是一个估计值 - 通常是一个非常不准确的结果。由于在搜索引擎中构建倒排索引的方式,这是不可避免的。由于它们的巨大尺寸,倒置的索引被分成很多桶。查询只会进入"深度"足够进入倒排索引以检索显示给用户的前1000个排名最高的结果。然后根据为查询检索的子集,估计总索引中有多少结果。
另请注意,大多数查询的结果都使用非常广泛的服务器网络进行缓存。这意味着您可以根据查询中的服务器获得不同的结果总数估计值。换句话说,两个同时进行相同搜索的用户可能会看到不同的结果列表,其中包含对结果总数的不同估计值。