利用公开接口获取IP信息

来源:互联网 发布:dnf上线就网络连接中断 编辑:程序博客网 时间:2024/04/27 19:15

在线平台/接口

虽然目前能够提供IP信息查询的平台很多,但是国内最著名的可能还是ip138,但是IP138目前能够提供的IP信息确实太少了,不管是做渗透还是做项目相信大家都不会采用这个查询,目前做得不错的主要有如下接口,鉴于IP信息存在国外和国内的差别,因此还是简单做下分类:

国内IP信息查询平台:

  • IPIP
  • 腾讯IP
  • 淘宝IP
  • IP138

国外IP信息查询平台:

  • ip-api
  • db-ip
  • BGP
  • ip2location

国内的查询相对比较简洁,而国外的在线平台给出的数据相对比较多,但是db-ip和ip2location每天都有限制查询,而ip-api则直接提供了API的查询接口,并且没有限制查询数量。

本地IP数据库

如果所做系统不能联网或者由于其它原因需要离线IP信息查询,国内和国外都有很著名的离线IP数据库,在项目需求不高时可以使用,现统计如下:

  • 国内的IP纯真数据库;
  • 国外的MaxMind Geo数据库;
  • 国内最近的ipip

Python查询接口

Python写接口查询就相对比较容易了,但是鉴于很多接口都请求次数限制,因此需要考虑的问题还是比较多,总结如下:

  • Python下使用requests进行https请求时,可能会遇到证书问题,当设置“verify=False”时会出现警告信息,可以通过导入warning库进行处理,具体见这里;
  • 如果是采用网页进行请求匹配,最好直接用字符串查找替换(replace,split)就OK,正则会有一些问题;
  • 如果HTTP请求可以通过添加代理来绕过查询次数限制;

写了三个平台(ip-api, db-ip, ip2location)的查询接口,大家可以拿去直接用, 推荐ip-api这个接口。

项目地址:ip-api

0 0