【问题标题】: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 Geocoding API 响应是房屋、建筑物还是两者都不是,特别是针对智利圣地亚哥(城市、国家)?
【发布时间】:2016-03-03 19:14:24
【问题描述】:

对于 Google Geocoding API(任何版本),是否有任何方法可以知道响应位置(坐标 - 纬度和经度)是指“房屋”、“建筑物”还是两者都没有?

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

给定一个人类可读地址列表(街道名称、号码、邮编等),我需要将它们中的每一个分类为“房屋”、“建筑物”或“无”。

请求示例:

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-maps google-geocoding-api


    【解决方案1】:

    Geocoding 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

    【讨论】:

    • 非常感谢。似乎是我正在寻找的功能还不存在。
    【解决方案2】:

    为此,请使用 Google Places API。

    从 JS v3 API 看,sn-p 是这样的:

      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

    【讨论】:

    • 但这不是一个“商店”,我需要弄清楚位置是否在附近。我需要知道是否是住宅、建筑物或与这两个选项不同的东西。我还没有找到这样的选项。
    • 我只是告诉你,你可以使用 nearBySearch() 方法来达到你的目的。 “商店”只是一个例子。请自行阅读文档。 developers.google.com/maps/documentation/javascript/…如果这不是你的答案,谷歌没有你需要的 api。
    • 虽然谷歌现在可能没有你需要的东西,但我认为这个答案与最初的问题相去甚远。至少我一开始就明白 OP 是在寻找一种方法来判断任何给定的结果是建筑物还是房屋,而不是寻找在特定位置找到特定类型建筑物的方法(这是 NearbySearch 做得好的)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    • 2014-08-21
    • 1970-01-01
    • 2014-03-17
    • 2017-09-02
    • 2012-11-18
    相关资源
    最近更新 更多