如何知道 Google 地理编码 API 响应是房屋、建筑物还是其中的 none,特别是智利圣地亚哥(城市、国家/地区)?

How to know if a Google Geocoding API response is a house, a building or none of them, specifically for Santiago de Chile, Chile (City, Country)?

对于 Google 地理编码 API(任何版本),有什么方法可以知道响应位置(坐标 - 纬度和经度)是否参考 'house', 'building' 或 none 个?

这里的想法是 'categorize' 位置。

给定一个人类可读地址列表(街道名称、号码、邮编等),我需要将它们中的每一个分类为 'House'、'Building' 或 'None'。

请求示例:

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),但没有发现任何对案例有帮助的内容。

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

提前致谢

为此目的,使用 Google 个地方 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

在地理编码 API(和地点 API)中有一种方法可以判断结果是否已知(Google 地图)是某种建筑物或没有。

在您的示例中,"types" : [ "street_address" ] 表示地址未绑定到特定建筑物,在 API 中。现实生活中那个地方可能真的有建筑物,只是 API 不知道而已。所以这有点告诉你 "don't know".

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

对于更精细的粒度区分,Places API Text Search lets you search for pretty much everything Google Maps does, and shows more types. These don't seem like they'll be enough to tell residential houses from other buildings though, may want to file a feature request