IP查询API怎么接入?Python批量查IP归属地的四种方案

ip-api/ip.sb/ipip/纯真离线库,附代码示例
发布于
5

想在自己的程序里自动查IP归属地——比如用户注册时记录IP对应的城市。手工打开ip138一个个查不现实,得用API。这篇讲几个能用的IP查询API和Python接入方法。

免费API方案

ip-api.com

免费版限每分钟45次请求,返回国家、城市、ISP、经纬度。国内IP数据精度一般,但对日常够用了。

import requests
resp = requests.get('http://ip-api.com/json/8.8.8.8')
data = resp.json()
print(f"国家: {data['country']}, 城市: {data['city']}, ISP: {data['isp']}")

ip.sb

极简API。查自己的IP直接 curl ip.sb,查别人IP用 curl ip.sb/8.8.8.8。只返回IP归属地的简短文本,不会返回JSON结构化数据。适合快速检查,不适合需要结构数据的场景。

国内方案

ipip.net

国内IP数据最全。免费版每天500次查询,返回城市、运营商、经纬度。API需要注册获取token:

# ipip.net API示例(需替换YOUR_TOKEN)
headers = {'Token': 'YOUR_TOKEN'}
resp = requests.get('https://user.ipip.net', headers=headers)

纯真IP库离线版

如果你的程序不需要联网(内网环境),可以把纯真IP库的离线数据库文件(qqwry.dat)放在服务器上,用Python的 qqwry 库本地查。不需要调用外部API,速度最快,但需要定期手动更新数据库文件。

怎么选

场景 推荐
简单自查 ip.sb(命令行一条搞定)
程序里查归属地 ip-api.com(免费、有JSON)
国内IP精确查询 ipip.net(免费额度够日常开发)
内网/高并发/离线 纯真离线库(本地查询零延迟)

更多IP工具看极跃IP资源导航

常见问题(FAQ)

IP反查域名哪个工具数据最全?
用同一个IP实测:SiteDossier查到8个(最多但有历史数据),YouGetSignal 5个,HackerTarget 6个(最干净),ViewDNS 3个(最少),Bing 4个。没有100%覆盖的工具。
为什么不同工具结果不一样?
不同工具数据来源不同(DNS被动收集/SSL证书日志/搜索引擎索引),有些会返回缓存数据。多查几个交叉验证比信一个更靠谱。
日常使用推荐哪个工具?
日常查用YouGetSignal(快干净),批量查用SecurityTrails API(付费但全),安全排查用HackerTarget(有端口和SSL信息)。三个各干各的。

本文由作者原创/授权发布于极跃圈(jiyueip.com)未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 讨论
热门最新
总结
暂无总结
0 / 600