【问题标题】:Need a client side API for determing geo location of IP addresses需要客户端 API 来确定 IP 地址的地理位置
【发布时间】:2011-01-15 17:50:52
【问题描述】:

我需要 Java 或 Ruby 中的客户端 API。我会非常 prefer 只需要它是本地的。事实上,这甚至可能不是 IP,而是更多的数据库导入。问题是我无法使用基于 Web 服务的服务,因为这对我来说 I/O 过于繁重。

注意:根据地理位置,我真正需要的只是国家/地区。我也会接受实际的纬度/经度坐标。

【问题讨论】:

    标签: java ruby api ip-address ip-geolocation


    【解决方案1】:

    对于基于网络的,您可以使用:http://code.google.com/apis/ajaxsearch/。你所要做的就是拥有:

    <script type="text/javascript" src="http://www.google.com/jsapi?key=yourapikey"></script>
    

    现在 Google 会填充一些 javascript 变量,在您的其他 js 脚本中,您现在可以使用以下方式访问地理位置:google.loader.ClientLocation.address.city、google.loader.ClientLocation.address.region、google.loader.ClientLocation。地址.国家/地区。

    对于非常粗略的本地解决方案,您可以在此处获取国家/地区的 IP 范围:http://www.countryipblocks.net/continents/。您基本上可以将其存储在本地并参考它以获得粗略的地理位置。

    【讨论】:

    • 我喜欢这个...如果您通过加载程序使用 任何 google API,则此变量将被填充。看起来也很准确。很好的发现。
    【解决方案2】:

    快速谷歌搜索产生了这个结果:http://www.hostip.info/dl/index.html

    我想这就是你要找的。

    【讨论】:

    • 不错的发现。它可能真的过时了,查看 sql 文件我看到了 2003 年的时间戳。奇怪的是,必须注释掉 1 行才能编译。它是一个 300mb 的 sql 文件,执行需要一段时间(到目前为止已经运行了一个小时)。
    • 那么,我工作了吗?我下载了它,但只是看了一下并没有安装。即使是从 2003 年开始,大多数 IP 地址都是正确的 :)
    【解决方案3】:

    几个月前我在看这些家伙:http://www.maxmind.com/app/geolitecountry

    这似乎没问题,就我的有限目的而言。

    【讨论】:

    • 他们提供了一个免费的轻量级 CSV 文件,对我来说是完美的。 30mb,我所需要的,而且似乎是最新的。谢谢。他们还为大多数常用语言提供 API。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-04
    • 1970-01-01
    • 2011-10-22
    • 1970-01-01
    相关资源
    最近更新 更多