Google地方信息附近的搜索结果-缺少详细数据?

时间:2018-07-10 14:24:22

标签: google-places-api google-places

我目前正在一个项目中,在该项目中,我们使用关键字对场所进行“附近”查询,然后发出后续的“详细”请求,以获取有关特定景点的更多信息。

在使用Google的新定价模型的情况下,documentation警告附近搜索的费用,但警告似乎暗示不再需要后续详细信息,因为我们的原始搜索应给我们我们需要的一切:

  

默认情况下,当用户选择一个地点时,附近搜索会返回所有   所选位置的可用数据字段,您将   相应地收费。没有办法限制附近的搜索   请求仅返回特定字段。避免提出要求(以及   支付)您不需要的数据,请使用“查找地点”请求   代替。

但是,我没有看到这个。当我运行示例请求时,“附近”请求中的结果仅包含与Google找到的地点相关的最少数据。要获取详细信息,我仍然必须进行后续详细信息请求。

有人知道我可能在忽略什么吗?我包括了我的请求网址(没有API密钥)。

https://maps.googleapis.com/maps/api/place/nearbysearch/json?key=xxxxxxxxxx&location=30.7329,-88.081987&radius=5000&keyword=insurance

这是我收到的结果之一的示例:

{
  "geometry": {
    "location": {
      "lat": 30.69254,
      "lng": -88.0443999
    },
    "viewport": {
      "northeast": {
        "lat": 30.69387672989272,
        "lng": -88.04309162010728
      },
      "southwest": {
        "lat": 30.69117707010728,
        "lng": -88.04579127989273
      }
    }
  },
  "icon": "https://maps.gstatic.com/mapfiles/place_api/icons/generic_business-71.png",
  "id": "53744cdc03f8a9726593a767424b14f7f8f86049",
  "name": "Ann M Hartwell - Aflac Insurance Agent",
  "place_id": "ChIJj29KxNZPmogRJovoXjMDpQI",
  "plus_code": {
    "compound_code": "MXV4+26 Mobile, Alabama",
    "global_code": "862HMXV4+26"
  },
  "reference": "CmRbAAAAcHM1P7KgNiZgVOm1pWojLto9Bqx96h2BkA-IyfN5oAz1-OICsRXiZOgwmwHb-eX7z679eFjpzPzey0brgect1UMsAiyawKpb5NLlgr_Pk8wBJpagRcKQF1VSvEm7Nq6CEhCfR0pM5wiiwpqAE1eE6eCRGhQPJfQWcWllOVQ5e1yVpZYbCsD01w",
  "scope": "GOOGLE",
  "types": [
    "insurance_agency",
    "point_of_interest",
    "establishment"
  ],
  "vicinity": "70 N Joachim St, Mobile"
}

1 个答案:

答案 0 :(得分:3)

我曾考虑删除此问题,但我想我会保留它,以防其他人像我一样感到困惑。

事实证明,我在“附近的搜索结果”中正在寻找的额外详细信息字段……在其中。

Google的新定价模型将地点数据字段分为三个层次:基本,联系和大气(基本数据是免费的,但另外两个会增加成本)。

作为这些更改的一部分,Place API调用已得到扩展,允许用户指定所需的数据字段,这样,如果不需要,则不必为额外的数据付费。

按照问题中的注释,邻近搜索查询包含所有可用的数据字段,并且不支持用于控制数据的参数-它始终会返回属于[Basic + Contact +大气]桶。

到目前为止,一切都很好。

但是,令我感到困惑的地方是不同数据层中包含的内容的细节。在发现内容不同之前,我浏览了几次这些笔记。

这是字段根据Places details请求细分的方式:

  

基本

     

“基本”类别包括以下字段:address_component,   adr_address,alt_id,formatted_address,几何图形,图标,ID,名称,   永久关闭,照片,place_id,plus_code,范围,类型,网址,   utc_offset,附近

     

联系

     

联系人类别包括以下字段:   formatted_phone_number,international_phone_number,营业时间,   网站

     

大气

     

“大气层”类别包括以下字段:price_level,   评分,评论

这是Places search请求的外观:

  

基本

     

“基本”类别包括以下字段:formatted_address,   几何图形,图标,ID,名称,永久关闭,照片,place_id,   plus_code,范围,类型

     

联系

     

联系人类别包括以下字段:opening_hours   (“位置搜索”仅返回open_now;请使用“位置详细信息”请求   获取完整的open_hours结果)。大气

     

“大气层”类别包括以下字段:price_level,   评级

我还没有找到有关它的文档,但是,“附近搜​​索”请求的结果似乎与“地方信息”搜索(包括“联系人”和“气氛”)接近(但不完全相同)。

我本来以为“附近搜索”结果现在包括“联系”和“大气”数据(如果可用),这意味着它将包含“地方详情”文档中列为“联系”和“大气”数据的所有字段,但事实并非如此。