Google搜索API过滤器/排序返回意外结果

Google搜索API过滤器/排序返回意外结果,api,search,filter,Api,Search,Filter,我已经创建了一个与Google自定义搜索API的集成,查询看起来相当简单,但返回了意外的结果。我的查询基于以下指南: 在我的网站上,我创建了pagemap,其中包含我的pagetypeid(我想根据它进行筛选)和页面排名(我想根据它进行排序)的信息。这些页面由Google编制索引,当我尝试进行简单查询时,json对象包含正确的值。 即: 在我的浏览器中测试时: https://www.googleapis.com/customsearch/v1?key=[myKey]&cx=[myCx]&q=*

我已经创建了一个与Google自定义搜索API的集成,查询看起来相当简单,但返回了意外的结果。我的查询基于以下指南:

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

https://www.googleapis.com/customsearch/v1?key=[myKey]&cx=[myCx]&q=*&alt=json

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

我收到一个包含pagemap对象的项目列表,如下所示:

“页面地图”:{

我有pagetypeid为12,3的对象和一系列其他数字

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

如果我将上述查询更改为:

https://www.googleapis.com/customsearch/v1?key=[myKey]&cx=[myCx]&q=*+更多:页面地图:页面页面类型ID:3&alt=json

来自谷歌的结果没有任何点击,尽管第一个查询显示了许多pagetypeid为3的点击

如果用户尝试相同的查询,但从pagetypeid:3更改为pagetypeid:12,则我会收到预期的命中率

为什么对这些问题有不同的处理

排序的方法也一样。使用“按分数排序”搜索*返回0,但使用q=test+sort…搜索返回命中数。这是我如何将不同参数传递给Google的组合吗

编辑: 因为这是一个测试站点,除了我自己的查询之外没有其他流量,所以我的请求的响应在被索引之前就被缓存了,因此我的查询返回了一个过时的结果,这是可能的吗

当我在一个活动较多的站点上安装此集成时,是否也可能 索引(由谷歌)更新得更频繁,因此,这些“bug”不会出现

提前谢谢

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