Google Search API过滤/排序会返回意外结果

时间:2012-08-08 15:01:27

标签: api search filter

我已经创建了与Google Custom Search API的集成,查询看起来相当简单,但会返回意外结果。我的查询基于以下指南:https://developers.google.com/custom-search/docs/structured_search

在我的网站上,我创建了包含我的pagetypeid信息的页面地图(我要在其中过滤)和页面排名(我想要排序)。这些页面由Google编制索引,当我尝试进行简单查询时,json对象包含正确的值。 即: 当我在浏览器中测试时:

https://www.googleapis.com/customsearch/v1?key= [的myKey]&安培; CX = [myCx]&安培; Q = *&安培; ALT = JSON

请注意,我正在搜索q = *(所有内容)。

我收到了包含以下页面地图对象的项目列表:

“pagemap”:{

"page": [
 {
  "pagetypeid": "12",
 }
],
"pageranking": [
 {
  "score": "5"
 }
],...}

我有pagetypeid的对象:12,3以及一系列其他数字......

当我尝试添加过滤或排序时,会出现奇怪的部分。

如果我将上面的查询更改为:

https://www.googleapis.com/customsearch/v1?key= [的myKey]&安培; CX = [myCx]&安培; Q = * +更多:页映射:页面pagetypeid:3 &安培; ALT = JSON

google的结果没有任何匹配,即使第一个查询显示了很多点击的pagetypeid:3。

如果尝试相同的查询,但从pagetypeid:3更改为pagetypeid:12,我会按预期收到匹配。

为什么这些查询的处理方式不同?

排序方式与此相同。搜索*按分数排序返回0,但搜索q = test + sort ...它返回命中。这是我将不同参数传递给Google的组合吗?

修改 是否可能,因为这是一个测试站点,除了我自己的查询之外没有其他流量 - 我的请求的响应在被索引之前已被缓存,因此我的查询返回过时的结果?

是否有可能,当我在具有更多活动的网站上安装此集成时, 索引(由谷歌)更频繁更新,因此,这些“错误”不会出现?

提前致谢。

0 个答案:

没有答案