当前位置: 主页 > Python语言

ip地址查询地理位置python-ip查询小工具输入子网掩码就可以查询到多少ip地址

发布时间:2023-02-09 10:07   浏览次数:次   作者:佚名

开发工具

Python版本:3.6.4 相关模块:IPy模块; 参数解析模块; 请求模块; 以及 Python 自带的一些模块。

环境搭建

安装Python并添加到环境变量中,pip安装需要的相关模块。

抢先看

py文件操作方法(cmd窗口): python ipLocQuery.py -ip ipaddrpython ipLocQuery.py -f ipaddrfileexe文件操作方法(cmd窗口): ipLocQuery.exe -ip ipaddripLocQuery.exe -f ipaddrfile 效果如下:

14cb6234b65a038e1c9e577b31483df6.png

bcf1979244307348fbc6fdacd72ec3b4.png

6fc1647ffefd836e36ab4c16a0972681.png

56f8f19f7053090b0c6b580e6e544b07.png

原理介绍

这个小工具是利用三个可以查询IP地址对应归属地的网站制作的ip地址查询地理位置python,分别是:

① ip.taobao.com

速度快,查国内IP地址对应归属地比较准确。

② ip-api.com

速度很慢ip地址查询地理位置python,精度一般。 可查询国内外IP地址的对应归属地,并提供经纬度信息。

③ api.ipstack.com(推荐)

速度快,精度高。 可查询国内外IP地址的对应归属地,同时提供经纬度信息。

代码实现起来比较简单,主要流程为:

(1) IP地址有效性验证

图片方便,直接调用IPy模块验证,有bug。 具体代码如下:

269bfba677068096b22dde8d7995ab33.png

(2)请求API接口获取IP地址对应的归属地

根据ip地址,请求各个网站提供的API接口,获取对应的ip地址归属地。 由于返回结果为英文或拼音,因此需要调用有道翻译的API接口对返回结果进行翻译,最后打印出翻译结果。

具体代码实现如下(以ipstack为例):

4bca9c8bc1dacc6f16915280ab985aa7.png