当前位置: 首页 > api商店 > IP查询Api接口详情
  • 首次赠送20次
  • 100000.0078/次
  • 500000.006/次
  • 1000000.005/次
  • 5000000.0047/次
  • 10000000.004/次
  • 随心搭

价格: (约元/次) (付费会员免费调用 前往入会>>)

立即购买 免费在线使用 首次可获赠20次
接口简介:IP归属地是将网络空间地图测绘技术与人工智能(AI)算法相结合,利用动态密度聚类算法和基于多层神经网络的IP地址定位算法,完成IP地址地理位置定位。IP归属地数据接口是IP地址定位数据库的在线调用接口。

ip定位离线库
  • Api文档
  • 状态码说明
  • 请求示例
手机号机主姓名核验

接口地址: https://登录后显示/pyi/54/160(支持:http/https)

返回格式:json,xml,jsonp调用

请求方式:POST,GET

POST 请求需要设置Header头:Content-Type: application/x-www-form-urlencoded;charset=utf-8

Api测试工具

请求说明:

名称 必填 类型 说明 示例 参数另存
appid String 应用ID,在后台我的应用查看或者添加 1
cip String 查询的ip地址,即IPv4地址 114.114.114.114
format String 返回数据格式类型,每个接口已经说明支持返回格式:json,xml, jsonp调用方法说明 json
jsonp_callback String 使用jsonp调用时,传递此参数,详情参考jsonp调用接口说明 callback1647397359
sign String 1.使用Md5方式验证,参数按一定规则md5后返回的字符串,详情点击这里阅读
2.使用Hash验证方式,直接跟上密钥即可。如何设置hash验证
通过我的应用里面修改验证方式
52a9dbe274a5c537bbf7a53e2d66c09f
time String 请求时传递的当前服务器时间戳 1545829466

Md5验证方式-加密顺序

sign = MD5( appid1cip114.114.114.114formatjsonjsonp_callbackcallback1647397359time1545829466密钥) 查看加密规则说明 密钥不需要键名,请直接跟上32位的密钥
红色部分代表参数值,appid默认为1,请修改为自己的appid值,去我的应用查看以及密钥
*注意:空值不参与加密。

返回参数说明:

名称 必填 类型 说明 示例 参数另存
accuracy String 精度 城市
adcode String 行政编码
areacode String 国家编码 SG
asnumber String 自治域编码 141995
codeid Integer 状态码,返回10000状态都会进行计费。具体说明可查看状态码说明 10000
continent String 大洲 亚洲
ip_city String ip所属国家、省、市, 新加坡
ip_country String 所属国家或地区 新加坡
ip_info String ip相关信息 Contabo Asia Private Limited
ip_isp String 运营商 中国电信
ip_latitude Float 纬度 1.286529
ip_longitude Float 经度 103.853519
message String 请求状态说明 返回成功
owner String 负责人 Contabo Asia Private Limited
prov String 省份 新加坡
radius String 定位半径
retdata Array 回数据集合,可能是数据、对象或者字符串
source String 来源 数据挖掘
time String 请求时传递的当前服务器时间戳 1648177397
timezone String 时区 UTC+8
zipcode String 邮编 04

JSON返回示例:

服务器状态码:

状态码 说明
10000 返回成功
10001 appid必须指定,可以我的应用里面查看
10002 sign值必须指定,加密规则请前往帮助中心查看
10003 sign值验证不通过,加密规则请前往帮助中心查看
10004 时差不能超过10分钟,可以不传递这个参数,注意时间戳单位是秒
10005 appid错误,请检查appid值,前往会员中心->我的应用查看或添加
10006 当前IP地址未授权,请前往用户中心->我的应用添加ip{@info}
10007 应用被禁用,请联系客服处理
10008 应用内没有该接口,请到我的应用里面添加这个接口
10009 api接口不存在
10010 您没有添加该api接口
10011 api已经到期
10012 没有订购任何api,请前往购买后再操作
10013 该接口已经暂停使用
10014 未知的错误,可以联系客服处理
10015 参数个数错误
10019 {@info}
10017 time必须是整型
10018 次数不足
10020 子接口不存在,可能已经被关闭
10021 服务器发生错误
10022 帐户余额不足,请充值!
10023 订单提交成功,等待回调结果
10024 调试模式数据
10025 查无数据

请选择开发语言:

  • PHP
  • Python
$method = 'GET'; //请求方式 GET,POST
$secretType = 'MD5'; //验证方式MD5,Hash 通过后台 我的应用去修改
$api_url = 'https://登录后显示/pyi/54/160';
$appid  =   '应用id';// 在后台我的应用查看;
$secret =   '应用密钥';// 在后台我的应用查看;
$data = array(
    'appid'=>  '1',
    'cip'=>  '114.114.114.114',
    'format'=>  'json',
    'jsonp_callback'=>  'callback1647397359',
    'time'=>  '1545829466',
    );

$data['appid'] = $appid;
$data['time'] = time();//当前服务器时间

if('MD5' == $secretType){
    ksort($data); //按照键名对数组排序,为数组值保留原来的键。
    $md5String = '';
    foreach($data as $key=>$val){
        if(strlen($val)>0){ //过滤空值
            $md5String.=$key.$val;
        }
    }
    $secret = md5($md5String.$secret);
}
$data['sign'] = $secret;
if('GET'==$method){
    $sendUrl = $api_url.'?'.http_build_query($data); //把数据转换成url参数形式,a=b&c=d&e=f
    $result = file_get_contents($sendUrl);
}else{
    $header = ['Content-Type: application/x-www-form-urlencoded;charset=utf-8'];
    $ch = curl_init();
    if(is_array($data))$data = http_build_query($data);
    curl_setopt($ch, CURLOPT_URL, $api_url);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    curl_setopt($ch, CURLOPT_POST, true);//POST
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_AUTOREFERER, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($ch, CURLOPT_ENCODING,'gzip,deflate');
    $result = curl_exec($ch);
}
$result = json_decode($result,true);
print_r($result);

                        
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
#该代码为python3.7示例代码
import ssl,time,hashlib,string
from urllib import request,parse,error;
from urllib.parse import quote


api_url = 'https://登录后显示/pyi/54/160';
appid  =   '应用id';#在后台我的应用查看;
secret =   '应用密钥';#在后台我的应用查看;
data = {
                'appid':'1',
                'cip':'114.114.114.114',
                'format':'json',
                'jsonp_callback':'callback1647397359',
                'time':'1545829466',
            };
data['appid'] = appid;
data['time'] = round(time.time());#当前服务器时间
keysArr = list(data.keys()) #取出字典key
keysArr.sort()#对字典key进行排序
md5String = '';
params = []
for key in keysArr:
    if data[key]:
        val = str(data[key])
        md5String+=key+val
        params.append(key + "=" + val )
md5String += secret;
m = hashlib.md5()
b = md5String.encode(encoding='utf-8')
m.update(b)
sign = m.hexdigest()

params.append('sign='+sign)#加入计算后的sign值去请求
params = '&'.join(tuple(params)); #把列表转成元组后用&分隔,最终转换成字符串 a=b&c=d&e=f

ssl._create_default_https_context = ssl._create_unverified_context
url = api_url+'?'+params;
url = quote(url, safe=string.printable)
req = request.Request(url)
opener = request.build_opener()
r = opener.open(fullurl=req)

doc = r.read();
print(doc.decode('utf-8'))