【问题标题】:Excluding Google Maps, What is the best way to Geo Code 1000+ addresses in Python?不包括谷歌地图,在 Python 中对 1000 多个地址进行地理编码的最佳方法是什么?
【发布时间】:2019-03-27 04:47:09
【问题描述】:

我必须对 1000 个地址进行地理编码以获得纬度和经度,以便以后可以对这些地址进行一些数据和地理分析。

过去,我使用 Google 的 API 来获取这些信息,但是,现在 Google 需要信用卡信息来生成 API 密钥。即使这样,它每小时或每天也有大约 60 个地址的限制(不记得确切的限制)。

我想知道是否有人可以指导我如何使用 python 获取 1000 个地址的 Lat 和 Long?

【问题讨论】:

标签: python-3.x geolocation geocoding google-geocoding-api


【解决方案1】:

SmartyStreets 有a tool for that.

SmartyStreets 还有一个Python SDK 可以使用。您可以在几秒钟或更短的时间内查找数千个地址。

完全披露:我是 SmartyStreets 的软件开发人员,我编写了 Python SDK

【讨论】:

  • :-D 我应该添加“开源”或“免费”,否则我很乐意使用谷歌地图
  • 啊。是的,SmartyStreets 允许您每月免费订阅 250 次查找,但如果您一次想要很多,它不是免费的。 :)
【解决方案2】:

geopy 是一个开源的 Python 2 和 3 客户端,用于多种流行的地理编码网络服务。仅举几例:这里、MapBox、Nominatim、Arcgis、Geonames、TomTom。使用示例查看完整列表:

https://geopy.readthedocs.io/en/stable/#module-geopy.geocoders

其中一些需要 API 密钥作为参数传递。其他的,不要。例如,Nominatim 只需要为您的应用定义一个user_agent

通过 PyPi 安装

pip install geopy

https://pypi.org/project/geopy/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-07
    • 1970-01-01
    • 2017-04-19
    • 2013-09-28
    相关资源
    最近更新 更多