【问题标题】:How to get the Country code from ip address without using any webservice? [closed]如何在不使用任何网络服务的情况下从 IP 地址获取国家代码? [关闭]
【发布时间】:2015-06-02 11:09:21
【问题描述】:

我正在尝试使用 java 中客户端计算机的 IP 地址获取国家/地区代码。但是我看到他们使用像 geolite 这样的网络服务......还有其他方法可以从 ip 地址获取国家/地区吗?

提前致谢

【问题讨论】:

  • 不,我认为不是,Geolite 维护自己的数据库,每个月的第一个星期二更新。使用Geolite有什么问题吗?
  • 是的,您可以维护自己的数据库。
  • 是的,您可以下载geolite数据库并自行维护

标签: java jakarta-ee atg


【解决方案1】:

创建爬虫,它将使用一些网络服务来获取其国家/地区的完整 IP 地址列表,保存到文件并在应用程序中使用。您需要不时更新它,但我没有其他想法如何在没有任何网络服务的情况下将 ip 转换为国家/地区。

【讨论】:

    【解决方案2】:

    MaxMind Geolite 提供相同的功能。您需要获取他们的数据库,并且您需要获取他们的 java api,通过它您可以获取特定 IP 地址的位置。

    只有两行代码,

    LookupService lookup = new LookupService(file,LookupService.GEOIP_MEMORY_CACHE);
    Location locationServices = lookup.getLocation(ipAddress);
    

    这里的文件是你从 GeoLite 得到的 dat 文件,即位置和 ip 地图的数据库。

    Database

    【讨论】:

      猜你喜欢
      • 2011-08-10
      • 1970-01-01
      • 2011-02-14
      • 2017-01-05
      • 2013-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-21
      相关资源
      最近更新 更多