【问题标题】:How do I geocode a Colombian address using Python 3 and geopy 1.21.0?如何使用 Python 3 和 geopy 1.21.0 对哥伦比亚地址进行地理编码?
【发布时间】:2020-04-30 06:14:11
【问题描述】:

我一直在尝试对哥伦比亚地址进行地理编码,但得到的坐标根本不准确。例如:

from geopy.geocoders import Nominatim
gc = Nominatim(user_agent="my_geocode_app")
gc.geocode("Calle 121 #48-60, Bogota")

结果:

Location(Calle 121, Bella Suiza, Usaquén, Distrito Capital, Bogotá, 1101, Colombia, (4.7000065, -74.0384207, 0.0))

那不是我的位置。根据谷歌地图,正确的坐标应该是 (4.703340, -74.058408) 但是当我尝试使用我居住过的任何其他国家/地区的地址时,结果是完全准确的。例如:

gc.geocode("Ibera 3851, Buenos Aires")

结果:

Location(3851, Iberá, Coghlan, Buenos Aires, Comuna 12, Ciudad Autónoma de Buenos Aires, C1430DHI, Argentina, (-34.5611637, -58.478657, 0.0))

那是我以前住的确切位置。所以问题只在于哥伦比亚地址。我尝试了法国、德国、阿根廷、西班牙和美国的地址。他们都很完美。 请让我知道正在发生的事情或如何以正确的方式对哥伦比亚地址进行地理编码,因为 geopy 似乎无法完整读取该国家/地区地址的格式。提前感谢您的帮助。

这些是其他一些哥伦比亚地址的例子,它们都来自首都波哥大。以防万一您想尝试一下(它们很奇怪):

大道 72 # 54A-24

大道 17 # 78G-11

卡雷拉大道 68 # 33-25 SUR

卡雷拉 72 #21-53

【问题讨论】:

    标签: python geocoding street-address geopy


    【解决方案1】:

    这是 OpenStreetMap 中缺少数据的情况。那个特定的门牌号还不存在。

    如果门牌号码已映射,则搜索工作正常。示例:Calle 122 # 21-43, Bogotá。

    【讨论】:

      猜你喜欢
      • 2015-09-24
      • 1970-01-01
      • 1970-01-01
      • 2021-01-26
      • 2020-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-04
      相关资源
      最近更新 更多