如何将经度和纬度转换为街道地址

MrC*_*ooL 16 javascript python geolocation google-maps-api-3 node.js

鉴于纬度和经度,我们如何使用Javascript或Python将其转换为街道地址?

daw*_*awg 17

99%的情况下,大多数人将您链接到Google地图的API.答案不错.但是 - 请注意禁止使用,使用限制和使用条款!虽然分布式应用程序很多都不会违反使用限制,但对于Web应用程序来说却是非常有限的.TOS不允许您将Google的数据重新用于带有您皮肤的应用程序.你不愿意让你的商业计划因谷歌的停止和终止信而脱轨,不是吗?

一切都没有丢失.有几个公开的数据来源,包括美国政府消息来源.以下是一些最好的:

特别是美国人口普查老虎数据库支持反向地理编码,对美国地址免费开放.大多数其他数据库都来自美国.

维基百科模型中的用户支持GeonamesOpenStreetMap.


小智 6

您可以尝试https://mapzen.com/pelias它的开源并积极开发.

例如:http://pelias.mapzen.com/reverse?la = 40.773656&rn = -73.9596353

返回(格式化后):

{
   "type":"FeatureCollection",
   "features":[
      {
         "type":"Feature",
         "properties":{
            "id":"address-node-2723963885",
            "type":"osmnode",
            "layer":"osmnode",
            "name":"151 East 77th Street",
            "alpha3":"USA",
            "admin0":"United States",
            "admin1":"New York",
            "admin1_abbr":"NY",
            "admin2":"New York",
            "local_admin":"Manhattan",
            "locality":"New York",
            "neighborhood":"Upper East Side",
            "text":"151 East 77th Street, Manhattan, NY"
         },
         "geometry":{
            "type":"Point",
            "coordinates":[-73.9596265, 40.7736566]
         }
      }
   ],
   "bbox":[-73.9596265, 40.7736566, -73.9596265, 40.7736566],
   "date":1420779851926
}
Run Code Online (Sandbox Code Playgroud)


Mat*_*arz 5

您可以使用Google Maps API.它有一个API函数可以完成这个:http: //code.google.com/intl/da-DK/apis/maps/documentation/javascript/services.html#ReverseGeocoding