免费获取IP信息

本文介绍了四个免费获取IP信息的资源,包括ip-api、IPIP、138网站和聚合数据,详细说明了各自的API请求格式、数据返回格式及使用限制,适合需要批量或个人查询IP信息的读者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、ip-api,部分数据不准确,但不限请求次数,且可批量json请求,返回数据可选:json、xml、csv,推荐

http://ip-api.com/docs/

请求接口请求方式响应
http://ip-api.com/json/24.48.0.1HTTP GET如下
{
  "query": "24.48.0.1",
  "status": "success",
  "country": "Canada",
  "countryCode": "CA",
  "region": "QC",
  "regionName": "Quebec",
  "city": "Saint-Leonard",
  "zip": "H1R",
  "lat": 45.5833,
  "lon": -73.6,
  "timezone": "America/Toronto",
  "isp": "Le Groupe Videotron Ltee",
  "org": "Videotron Ltee",
  "as": "AS5769 Videotron Telecom Ltee"
}

此时返回的是英文格式,可以加个参数,使其返回为中文:

请求接口请求方式响应
http://ip-api.com/json/117.188.180.63?lang=zh-CNHTTP GET如下
{
  "query": "117.188.180.63",
  "status": "success",
  "country": "中国",
  "countryCode": "CN",
  "region": "GD",
  "regionName": "广东",
  "city": "广州",
  "zip": "",
  "lat": 23.1292,
  "lon": 113.264,
  "timezone": "Asia/Shanghai",
  "isp": "China Mobile communications corporation",
  "org": "China Mobile",
  "as": "AS9808 China Mobile"
}
2、IPIP

https://www.ipip.net/product/client.html
提供数据库和api两种请求方式

API请求格式:

限制:限速每天1000次,限速为单 IP 每秒最多 5 次请求

请求接口请求方式响应
http://freeapi.ipip.net/118.28.8.8HTTP GET如下
 [
    "中国",
    "广西",
    "桂林",
    "",
    "移动"
]
数据库请求格式:

先安装依赖模块

#python版本>3.3
pip install ipip-ipdb
#python版本为2.x,或者<3.3版本
pip install ipaddress
import ipdb
#链接库
db = ipdb.BaseStation("/path/to/base_station.ipdb")
#库表中的所有字段
print(db.fields())
#根据IP请求具体信息,返回字典
print(db.find_map("117.136.83.55", "CN"))

返回数据信息:

{'country_name': '中国', 'region_name': '福建', 'city_name': '福州'}
3、138网站

http://user.ip138.com/ip/
首次注册后赠送1000次请求,API接口请求格式如下,必须要有token值

#!/usr/bin/python
# -*- coding: utf-8 -*-
import httplib2
from urllib.parse import urlencode #python3
#from urllib import urlencode #python2
params = urlencode({'ip':'9.8.8.8','datatype':'jsonp','callback':'find'})
url = 'http://api.ip138.com/query/?'+params
headers = {"token":"8594766483a2d65d76804906dd1a1c6a"}#token为示例
http = httplib2.Http()
response, content = http.request(url,'GET',headers=headers)
print(content.decode("utf-8"))

响应格式:

{
    "ret": "ok",    // ret 值为 ok 时 返回 data 数据 为err时返回msg数据
    "ip": "117.25.13.123",  // ip
    "data": [
        "中国",     // 国家
        "福建",     // 省会或直辖市
        "福州",     // 地区或城市
        "电信",     // 运营商
        "361000",  // 邮政编码(暂不提供)
        "0592"     // 地区区号(暂不提供)
    ]
}
还有另一种方法,通过爬虫筛选页面内容获取IP信息

http://www.ip138.com/ips138.asp?ip=124.127.205.82&action=2

通过拼接上面的连接,获取到页面想要的内容,试过没有限制

4、聚合数据

https://www.juhe.cn/docs/api/id/1

注册后每天免费获取次数为500次,请求参数中必须带入key值

请求接口请求方式响应
http://apis.juhe.cn/ip/ipNew?ip=112.112.11.11&key=HTTP GET如下
{
    "resultcode": "200",
    "reason": "查询成功",
    "result": {
        "Country": "中国",
        "Province": "江苏省",
        "City": "无锡市",
        "Isp": "电信"
    },
    "error_code": 0
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值