【问题标题】:Geocode by IP in python and/or django在 python 和/或 django 中按 IP 进行地理编码
【发布时间】:2012-01-17 20:52:06
【问题描述】:

我应该使用哪个库在 Python 中按 IP 地址进行地理编码? python 是否有类似于http://www.rubygeocoder.com/ 的东西?我很难找到任何通过 IP 进行地理编码的东西。

【问题讨论】:

标签: python django geolocation


【解决方案1】:

取自this answer

>>> import urllib
>>> response = urllib.urlopen(
     'http://api.hostip.info/get_html.php?ip=12.215.42.19&position=true').read()
>>> print response
Country: UNITED STATES (US)
City: Aurora, TX

Latitude: 33.0582
Longitude: -97.5159
IP: 12.215.42.19

【讨论】:

  • 我刚刚尝试了一些丹麦IP地址的服务,但准确性很差。
【解决方案2】:

使用 GitHub/PyPi 上的Geocoder,您可以通过执行以下操作非常简单地从特定 IP 地址获取完整的 JSON 对象响应。

>>> import geocoder
>>> g = geocoder.ip('12.215.42.19')
>>> g.latlng
(38.0, -97.0)
>>> g.json

您还可以通过在搜索字段中添加“我”来搜索您当前的 IP 地址

g = geocoder.ip('me')
g.address

通过以下方式安装:

pip install geocoder

不同的提供者可能比其他提供者更准确,但它很实用!

【讨论】:

    【解决方案3】:

    【讨论】:

    • 我看到了,我想知道我是否不必进行一些神秘的安装过程......
    • 安装应该非常简单:maxmind.com/app/python 他们似乎有 match.com,about.com 作为他们的客户。如果需要,唯一需要调查的是多站点许可证的成本。
    猜你喜欢
    • 1970-01-01
    • 2020-02-16
    • 2011-03-15
    • 2015-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-15
    相关资源
    最近更新 更多