全球域名 WHOIS 信息实时查询免费 API 接口教程,支持1000+后缀

简介: 这是一款免费的域名WHOIS实时查询接口,覆盖1000+后缀(如.com/.cn/.org等),返回原始WHOIS数据,支持GET/POST调用。适用于域名归属查询、监控、到期提醒及品牌保护等场景,无每日调用限制,接入简单。

一、接口简介

这是接口盒子提供的一个免费 域名WHOIS 信息实时查询接口,覆盖超过 1000+ 域名后缀,包括常见的 .com.net.cn.org等顶级域名和国别域名。

接口返回的是原始 WHOIS 信息内容,开发者可以根据自己的需求从中提取注册人、注册商、注册时间、到期时间、DNS 服务器等关键字段。

💡 适用场景:域名归属查询、域名监控、到期提醒、品牌保护、站长工具、批量域名信息采集等。


二、请求地址与请求方式


三、请求参数说明

参数

名称

必填

说明

id

用户 ID

用户中心的数字 ID,例如 id=10000000

key

用户 KEY

用户中心通讯秘钥,例如 key=15he5h15ty854j5sr152hs2

domain

查询域名

要查询的域名,尽量使用主域名,不要带 http(s),例如 domain=apihz.cn

type

查询方式

1=优先使用查询缓存(默认),2=直接查询注册局官方,实时性更高但更慢



四、返回参数说明

接口返回 JSON 格式数据,主要包含以下字段:

参数

名称

说明

code

状态码

200表示成功,400表示错误

msg

信息提示

成功或失败的具体提示信息

domain

查询域名

当前查询的域名

whois / data

WHOIS 信息

原始 WHOIS 内容,不同注册局格式不同,需自行提取;换行符统一为 \n\r\n

成功返回示例

{
  "code": 200,
  "domain": "apihz.cn",
  "whois": "Domain Name: apihz.cn\nROID: 20240319s10001s56425741-cn\nDomain Status: clientUpdateProhibited\nDomain Status: clientTransferProhibited\nRegistrant: 绵阳耳关明皿网络科技有限公司\nRegistrant Contact Email: erguanmingmin@qq.com\nSponsoring Registrar: 腾讯云计算(北京)有限责任公司\nName Server: ns3.dnsv2.com\nName Server: ns4.dnsv2.com\nRegistration Time: 2024-03-19 01:34:31\nExpiration Time: 2028-03-19 01:34:31\nDNSSEC: signedDelegation\n"
}

失败返回示例

{
  "code": 400,
  "msg": "通讯秘钥错误。"
}

五、GET 请求示例(官方原版)

直接在浏览器或 HTTP 客户端中请求:

https://接口盒子/api/wangzhan/whoisall.php?id=88888888&key=88888888&domain=apihz.cn&type=1



六、POST 请求示例(官方说明)

官方文档中说明 POST 请根据开发语言自行实现,下面分别给出 PHP 和 Python 的完整示例。


七、PHP 调用示例

方式一:cURL GET 请求(推荐,最简单)

<?php
$id     = "10000000";      // 用户中心数字ID
$key    = "your_key_here"; // 通讯秘钥
$domain = "apihz.cn";      // 查询域名,不带 http
$type   = 1;               // 1=缓存优先,2=直连注册局
// 构建请求URL
$apiUrl = "https://接口盒子/api/wangzhan/whoisall.php";
$requestUrl = $apiUrl . "?" . http_build_query([
    'id'     => $id,
    'key'    => $key,
    'domain' => $domain,
    'type'   => $type
]);
// 初始化cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $requestUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 本地测试可关闭,生产环境建议开启
$response = curl_exec($ch);
// 错误处理
if (curl_errno($ch)) {
    die("cURL 请求错误:" . curl_error($ch));
}
curl_close($ch);
// 解析JSON
$data = json_decode($response, true);
if ($data['code'] == 200) {
    // 处理换行符
    $whois = str_replace(["\\r\\n", "\\n", "\\r"], PHP_EOL, $data['whois'] ?? $data['data'] ?? '');
    echo "查询域名:" . $data['domain'] . PHP_EOL;
    echo "WHOIS 信息:" . PHP_EOL;
    echo $whois . PHP_EOL;
} else {
    echo "查询失败:" . $data['msg'] . PHP_EOL;
}

方式二:cURL POST 请求

<?php
$apiUrl = "https://接口盒子/api/wangzhan/whoisall.php";
$params = [
    'id'     => '10000000',
    'key'    => 'your_key_here',
    'domain' => 'apihz.cn',
    'type'   => 1
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
if (curl_errno($ch)) {
    die("cURL 请求错误:" . curl_error($ch));
}
curl_close($ch);
$data = json_decode($response, true);
if ($data['code'] == 200) {
    $whois = str_replace(["\\r\\n", "\\n"], PHP_EOL, $data['whois'] ?? $data['data'] ?? '');
    echo "查询成功!" . PHP_EOL;
    echo $whois . PHP_EOL;
} else {
    echo "错误:" . $data['msg'] . PHP_EOL;
}

八、Python 调用示例

方式一:requests GET 请求(推荐)


import requests
def query_whois(domain, uid, ukey, query_type=1):
    url = "https://接口盒子/api/wangzhan/whoisall.php"
    params = {
        "id": uid,
        "key": ukey,
        "domain": domain,
        "type": query_type
    }
    try:
        response = requests.get(url, params=params, timeout=30)
        response.raise_for_status()
        result = response.json()
        if result.get("code") == 200:
            # 处理换行符
            whois_raw = result.get("whois") or result.get("data", "")
            whois_data = whois_raw.replace("\\r\\n", "\n").replace("\\n", "\n")
            return {
                "success": True,
                "domain": result.get("domain"),
                "whois": whois_data
            }
        else:
            return {
                "success": False,
                "msg": result.get("msg", "未知错误")
            }
    except requests.exceptions.Timeout:
        return {"success": False, "msg": "请求超时"}
    except requests.exceptions.RequestException as e:
        return {"success": False, "msg": f"网络请求异常:{e}"}
    except ValueError:
        return {"success": False, "msg": "返回数据不是合法 JSON"}
if __name__ == "__main__":
    # 替换为自己的 ID 和 KEY
    UID  = "10000000"
    UKEY = "your_key_here"
    res = query_whois("apihz.cn", UID, UKEY, query_type=1)
    if res["success"]:
        print("查询域名:", res["domain"])
        print("WHOIS 信息:")
        print(res["whois"])
    else:
        print("查询失败:", res["msg"])

方式二:requests POST 请求


import requests
url = "https://接口盒子/api/wangzhan/whoisall.php"
payload = {
    "id": "10000000",
    "key": "your_key_here",
    "domain": "apihz.cn",
    "type": 1
}
try:
    response = requests.post(url, data=payload, timeout=30)
    response.raise_for_status()
    result = response.json()
    if result["code"] == 200:
        whois = result.get("whois") or result.get("data", "")
        whois = whois.replace("\\r\\n", "\n").replace("\\n", "\n")
        print("查询成功!")
        print(whois)
    else:
        print("查询失败:", result["msg"])
except requests.exceptions.RequestException as e:
    print("请求异常:", e)

九、如何解析原始 WHOIS 数据

因为不同注册局的 WHOIS 格式不一样,接口返回的是原始信息,通常需要自己提取关键字段。这里给一个 Python 简单解析示例:

import re
def parse_whois(raw):
    info = {}
    for line in raw.split("\n"):
        if ":" in line:
            k, v = line.split(":", 1)
            info[k.strip()] = v.strip()
    # 常见字段提取
    print("注册人:", info.get("Registrant", ""))
    print("注册商:", info.get("Sponsoring Registrar", ""))
    print("注册时间:", info.get("Registration Time", ""))
    print("到期时间:", info.get("Expiration Time", ""))
    print("DNS 服务器:", [v for k, v in info.items() if "Name Server" in k])
# 在拿到 whois 字符串后调用
# parse_whois(whois)

十、常见问题与注意事项

  1. 编码问题:请求必须使用 UTF-8,否则带中文的域名或参数可能失败。
  2. type 参数选择
  • type=1:优先缓存,速度快,适合批量查询;
  • type=2:直连注册局,实时性高但慢,适合精确校验。
  1. 换行符处理:返回数据中的换行符可能是 \n\r\n\\r\\n,需要根据语言做替换处理。
  2. 字段差异:不同后缀、不同注册局的 WHOIS 格式不完全一致,提取注册人、邮箱、到期时间时需要做兼容处理。
  3. 异常处理:WHOIS 查询受上游注册局影响,可能出现超时、限流、无响应等情况,代码中一定要加超时和异常捕获。

十一、总结

这个接口最大的优势是免费、支持后缀多、每日无调用上限,非常适合个人开发者、站长工具、域名监控系统等轻量级项目接入。只要注册账号拿到自己的 ID 和 KEY,再用上面的 PHP 或 Python 示例稍作修改,就能快速把全球域名 WHOIS 查询能力集成到自己的系统里。

目录
相关文章
|
5天前
|
人工智能 弹性计算 运维
|
2天前
|
缓存 人工智能 安全
GPT-5.6 Terra与GPT-5.5性能实测:成本减半后的跑分对比与快速迁移指南
GPT-5.6 Terra 的定价为每百万 token 输入 2.50/输出 15。GPT-5.5 则是 5/ 30。Terra 的每一项费率,包括 $0.25/M 的缓存读取,都恰好是 GPT-5.5 的一半,因此在任何工作负载组合下,Terra 都固定 便宜 2.0x。以每天 10 万次请求、3K token 提示词计算,大约是 Terra 每天 2,000,GPT−5.5每天 4,000,即每月约 60,000对 120,000。问题在于:OpenAI 没有发布任何针对 Terra 的编码基准。那个著名的 91.9% Terminal-Bench 数字是 Sol 在 Ul
|
2天前
|
SQL 人工智能 自然语言处理
大模型内容安全实时防护:恶意Prompt注入拦截、越权阻断与熔断机制方案.166
本文系统阐述大模型输入安全防护体系,涵盖提示词注入、恶意Prompt拦截、越权阻断与输入熔断四大核心风险及应对方案。提出四层防护架构(预处理、检测、鉴权、熔断),结合规则引擎、语义识别与RBAC权限控制,实现全链路实时防护,保障业务合规、数据安全与服务稳定。
213 1
|
26天前
|
Linux 程序员 数据格式
【2026最新】Notepad++下载、安装和使用一篇搞定(附中文版安装包)
Notepad++ 是一款免费开源、轻量高效的 Windows 文本编辑器,支持 C/Python/HTML 等 80+ 语言语法高亮、代码折叠、正则替换、编码转换及插件扩展,专为程序员与文本处理用户打造,完美替代系统记事本。(239字)
|
10天前
|
人工智能 编解码 物联网
2026 最新Stable Diffusion 本地部署教程 下载安装使用详细图解(含官网安装包)
Stable Diffusion(SD)是2022年发布的开源文生图模型,由Stability AI等联合开发。支持文生图、图生图、局部重绘等,依托VAE降低算力需求,可在消费级显卡运行。本文提供秋葉aaaki制作的Windows整合包(含图形界面与插件),开箱即用,零配置启动。
|
11天前
|
人工智能 缓存 安全
Claude Code 封号真实原因曝光,这次彻底不装了,直接针对国内开发者的账号下手?
Claude Code 封号潮背后:逆向扒出客户端隐写区域标记,Anthropic 政策收紧叠加 DeepSeek 7 月涨价,国产替代更紧迫。
|
20天前
|
存储 人工智能 监控
QoderWork完全指南:从入门到精通,把“AI实习生”变成你的全能工作搭档
阿里云2026年推出的桌面端AI工作助手QoderWork,不止聊天,更可动手干活:本地运行、安全可控,支持文件整理、数据分析、PPT生成、网页开发等;内置专家套件、多Agent协作与自定义Skills,让AI真正成为你身边的“AI实习生”。
|
16天前
|
人工智能 JSON 自然语言处理
让教学更智慧:用阿里云百炼工作流,自动生成中小学教材内容#小有可为#有温度的AI
通过可视化工作流编排,将大模型推理能力转化为标准化的教学内容生成引擎。教师只需输入教材标题和适用学段,即可自动获得结构完整、符合课程标准的章节内容,大幅降低备课门槛,助力教育资源均衡化。
508 127
|
12天前
|
人工智能 安全 程序员
终于,Claude Code 封号的原因被曝光了!竟然针对中国用户,植入隐形代码?!
通俗易懂地揭秘 Claude Code 封号的手段,分享一些自己对 AI 编程困境的思考,Codex、Cursor、DeepSeek、智谱 GLM、甚至是豆包,都有所行动了
539 1