在Python中跟踪IP地址

在Python中跟踪IP地址,python,ip-address,Python,Ip Address,对于我的编程入门课程的一个大学项目,我决定制作一个跟踪IP地址的小软件,并将它们很好地放在GUI(PyQt)上。我知道没什么大不了的,但我还是喜欢这个主意 所以我在谷歌上搜索了一下,找到了MaxMind的IP和他们的免费产品,以及MaxMind GeoIP数据库的API。很酷,嗯 但缺点是,要查询他们的数据库,我必须下载country city的单个数据库。这是不好的,因为我必须让最终用户下载额外的文件(以MB为单位),只是为了查找IP地址 所以我想知道,还有其他的方法吗?如何跟踪IP地址?请注

对于我的编程入门课程的一个大学项目,我决定制作一个跟踪IP地址的小软件,并将它们很好地放在GUI(PyQt)上。我知道没什么大不了的,但我还是喜欢这个主意

所以我在谷歌上搜索了一下,找到了MaxMind的IP和他们的免费产品,以及MaxMind GeoIP数据库的API。很酷,嗯

但缺点是,要查询他们的数据库,我必须下载country city的单个数据库。这是不好的,因为我必须让最终用户下载额外的文件(以MB为单位),只是为了查找IP地址

所以我想知道,还有其他的方法吗?如何跟踪IP地址?请注意,如果可能的话,我需要将它们降低到城市级别。类似于这个叫aruljohn.com/track.pl的家伙

谢谢

我更喜欢“pygeoip”,因为它允许您在本地开发完整的解决方案。当然,您需要保留数据库

如果不想将数据库保存在本地,则必须依赖外部服务来查询IP的位置。这将使您的解决方案很小,但依赖于此服务

有关此检查:ipinfo数据库.com

它们提供了JSON和XMLAPI接口,应该非常容易构建


更多信息请访问:

我有更好的主意。你为什么不制作一个非常简单的web应用程序来进行实际的查找;您的PyQt客户端将对其执行HTTP请求。或者在这种情况下,你甚至不需要客户。只需制作一个网页即可获得IP地址并显示城市。

本地解决方案的问题是,我希望在朋友中分发我的应用程序,我真的不希望他们下载数据库只是为了查找IP地址。我希望你能理解我的观点。我将查看链接,并可能在此过程中学习JSON;)谢谢@布莱恩:是的,我更喜欢JSON API,但要开始,你至少可以使用XML API来测试waters。看,如果这对你有用的话。但是你想让他们下载你的应用程序,可能还有Qt和Python…)我不想涉及到网络浏览器。然后让客户端和服务器同时使用。顺便说一句,Apache和Lighttpd都有地理定位模块。您只需将位置返回给您的客户即可。