在Python中,获取有关IP地址的更多信息

时间:2011-07-07 13:24:12

标签: python reverse-dns gethostbyaddr pywhois

我在Python中了解gethostbyaddr,这对我有用。我想获得更多关于IP地址的信息,比如可以在各种网站上找到的信息,例如谁拥有该IP地址,原产国,......等等。我需要以编程方式完成此操作。

是否有用于Python的内置命令,或者我是否需要访问包含此类信息的某个数据库,或者是否有任何Python API? Python不是我的母语,所以我不熟悉如何在Python中解决这样的问题。

2 个答案:

答案 0 :(得分:5)

您可以使用pywhois来检索whois信息,即托管组织/个人的姓名和联系方式。请注意,whois信息质量会有所不同;通常,域名(与gethostbyaddr一起找到)可以获得比IP地址更好的结果。

如果您只需要地理信息,请使用pygeoip。它通过在数据库(例如MaxMind提供的数据库中查找)将IP地址映射到某个位置。请注意,免费的“Lite”版本只会给你一个粗略的想法,20-50km的误差并不少见。

答案 1 :(得分:0)

好的,这是我的回答。我打算在我的机器上清理公共消费Python 3.x版本的pywhois,并希望在下周我将我的代码提交到subversion存储库。根据我使用的IP地址,我首先通过将gethostbyaddr应用于phihag建议的IP地址然后将其放入pywhois来获取信息的成功率约为78%。我会让读者自己决定这个比率是否足以满足他们的特定应用。