如何知道Google Geocoding API响应是房屋,建筑物还是其中一种,特别是智利圣地亚哥(智利城市)?

时间:2016-03-03 19:14:24

标签: google-maps google-geocoding-api

对于Google地理编码API(任何版本),有没有办法知道响应位置(坐标 - 纬度和经度)是否被评审为' house' a' building' 39;或者都没有?

这里的想法是对'进行分类。位置。

鉴于一个人类可读地址列表(街道名称,号码,邮编等),我需要将每个地址分类为“建筑物”,“建筑物”和“建筑物”。或者'无'。

请求示例:

https://maps.googleapis.com/maps/api/geocode/json?address=Dieciocho%2045%2C%20Santiago%2C%20Region%20Metropolitana&key={{key}}&components=country:CL

使用示例" location_type"是" ROOFTOP" (完全准确)但即使你没有看到任何address_component可以给我我需要的信息。我错过了什么吗?

我已阅读api文档(https://developers.google.com/maps/documentation/geocoding/intro#GeocodingResponses),但未找到任何有用的案例。

有谁知道如何实现这个结果?

提前谢谢

2 个答案:

答案 0 :(得分:1)

出于此目的,请使用Google Places API。

从JS v3 API开始,代码段如下:

  var service = new google.maps.places.PlacesService(map);
  service.nearbySearch({
    location: new google.maps.LatLng(...),
    radius: 10,
    type: ['store']
  }, callback);

https://developers.google.com/maps/documentation/javascript/examples/place-search

答案 1 :(得分:1)

地理编码API(和Places API)中有一种方法可以判断结果是否已知(对于Google地图)是否为某种建筑物。

在您的示例中,"types" : [ "street_address" ]表示地址未绑定到API中的特定建筑物。在现实生活中,实际上可能有一个建筑物,它只是API不知道它。所以这有点告诉你"不知道"。

在下面的示例中,"types" : [ "premise" ]结果表明这是某种建筑......但正如您所看到的,它实际上是一座大教堂: https://maps.googleapis.com/maps/api/geocode/json?latlng=-29.903018,-71.251052

为了获得更精细的细微差别,Places API Text Search可让您搜索Google地图所做的一切,并显示more types。这些看起来似乎不足以告诉其他建筑物的住宅,但可能需要file a feature request