零基础接入 Whois 域名查询 API:参数、请求与返回字段详解

发布时间:2026/10/23 13:56:36

零基础接入 Whois 域名查询 API:参数、请求与返回字段详解 Whois 域名查询接口用于根据域名获取注册信息包括注册商、注册主体、创建时间、到期时间、DNS 服务器、域名状态与 DNSSEC 等。对于域名管理后台、到期监控、批量资产盘点这类场景它是常用的一次性查询能力。本文从零开始说明第一次调用需要准备什么、最小请求怎么发、返回值怎么看。适用场景与能力边界典型用途包括域名到期前的预警提醒查询某个域名是否已被注册为选名提供依据批量拉取自有域名资产并汇总注册商与注册主体在页面中展示域名的“域龄”。接口支持所有主流 TLD包括.com、.cn、.net、.org、.io、.me、.top、.xyz等几乎所有 ICANN 认证后缀。有一点值得注意接口会自动归一化传入的地址例如传入https://www.baidu.com/abc会被自动剥离为baidu.com。这意味着调用方不必先写 URL 解析逻辑。能力边界同样需要说清Whois 数据反映的是注册局/注册商侧的公开记录受隐私保护策略影响的域名注册主体等字段可能被代理信息替代或为空接口不提供域名解析结果、网站内容或流量数据。另外Whois 数据年级变化接口侧对同一域名做了 24 小时缓存因此返回的是缓存窗口内的结果不适合用来判断秒级状态变化。调用前的准备需要两样东西一个域名以及一个 API Key。域名参数domain可以传裸域名也可以传完整 URL接口会自动归一化但显式传裸域名更稳妥。第二个参数with_raw用于控制是否返回原始 Whois 文本当只需要结构化字段时可以不传以减小响应体积。鉴权兼容Authorization: Bearer API_KEY请求头、X-API-Key请求头或 Query 中的key参数。本文示例使用 Query 参数形式便于 curl 直接复制。最小请求curl 示例把YOUR_API_KEY替换为实际 Keybaidu.com替换为目标域名curl https://v1.apizero.cn/api/whois?domainbaidu.comkeyYOUR_API_KEY需要原始文本时加上with_rawcurl -H Authorization: Bearer YOUR_API_KEY \ https://v1.apizero.cn/api/whois?domainbaidu.comwith_rawtrue接口方法为 GET参数通过 Query String 传递。Python 接入示例下面封装一个带超时、业务码判断与结果分流的调用函数import os import requests def query_whois(domain: str, with_raw: bool False, api_key: str | None None) - dict: url https://v1.apizero.cn/api/whois params {domain: domain} if with_raw: params[with_raw] true headers {} key api_key or os.environ.get(APIZERO_KEY) if key: headers[Authorization] fBearer {key} resp requests.get(url, paramsparams, headersheaders, timeout20) resp.raise_for_status() payload resp.json() if payload.get(code) ! 0: # 注意错误信息字段名为 error raise RuntimeError(f查询失败: code{payload.get(code)}, error{payload.get(error)}) return payload[data] data query_whois(baidu.com) if data.get(is_available): print(域名未注册) else: print(注册商:, data.get(registrar)) print(创建时间:, data.get(creation_date)) print(到期时间:, data.get(expiration_date)) print(域龄:, data.get(creation_age_text)) if data.get(expiring_soon): print(警告域名将在 30 天内到期)这里有个容易踩坑的点该接口错误响应中的字段名是error不是常见的msg。解析失败响应时按error取值否则会拿到None。返回字段解读成功响应的code 0核心数据在data内。字段含义如下名称与结构以文档为准字段含义domain归一化后的域名is_available域名是否未注册true 表示可注册registrar注册商名称registrant注册主体creation_date创建时间expiration_date到期时间creation_age_text域龄的人类可读字符串如「N 年 M 月」expiring_soon是否在 30 天内到期name_serversDNS 服务器列表domain_status域名状态列表dnssecDNSSEC 状态whoiscx国内域名可能返回的中文注册主体两个字段值得单独说明。is_available让接口可以兼做域名可用性检测未注册域名会返回 true可用于选名前查询。expiring_soon在 30 天内到期时为 true前端可以据此做高亮提示省去自己算日期的麻烦。关于中文主体对国内.cn等域名接口的 whoiscx 服务可能返回中文注册主体名例如「极数本源福州科技有限公司」。但这并非所有域名都有读取时仍要做空值判断不能假设registrant或whoiscx必然非空。with_rawtrue时返回的原始 Whois 文本是各注册局格式不一的文本块适合排查或留档不适合直接做字段解析——结构化字段已经由接口整理好。常见错误与排查现象可能原因排查方向code非 0提示鉴权失败Key 无效、缺失或未正确传递检查 Header 或 Query 中的 Keycode非 0提示参数错误domain为空或不是有效域名传入裸域名或完整 URL避免空值HTTP 429超出调用频率控制并发QPS 以文档为准某些字段为空域名启用了隐私保护或该 TLD 不公开该字段属正常情况展示层做兜底解析错误响应时记住字段是error。这条在接入阶段很容易被忽略用惯了msg的代码会静默吞掉错误原因。工程化注意事项利用 24 小时缓存。接口对同一域名在 24 小时内只调用一次上游服务。业务侧若做批量盘点不必担心对同一域名重复查询带来的额外开销但也不要指望连续调用能观察到即时变化。归一化不要完全依赖接口。虽然接口会自动剥离路径与协议但在调用前用urllib.parse或简单正则统一成小写裸域名能让本地缓存键更一致避免Baidu.com与baidu.com在本地缓存中重复。Key 保存在服务端。域名资产信息往往属于内部数据由后端代理调用前端只调用自己的业务接口。到期告警不要只依赖单次查询。expiring_soon只反映查询时刻的 30 天窗口配合定时任务周期性拉取才能形成稳定的到期提醒链路。原始文本谨慎落库。with_raw返回的文本可能包含注册人联系信息属于个人信息范畴存储前应评估必要性并做访问控制。参考文档接口文档接口地址
延伸阅读

更多相关文章

2026/10/23 14:53:04

CUPS 2.3.3 源码编译与打印链路排障实践

简介:CUPS 2.3.3 源代码包面向 Linux 与类 Unix 系统管理员、打印机驱动开发者及需要定制打印服务的技术人员,用于在本地编译、裁剪和调试这套通用 Unix 打印系统。其核心围绕 IPP 作业管理展开,兼容 LPD、IPP Everywhere 与 AirPrint&#x…

2026/10/23 14:53:04

高次谐波数值模拟:串联TDSE、SFA与宏观传播的Matlab源码

简介:面向高次谐波产生(HHG)数值模拟的开放源码 MATLAB 仿真包,聚焦强激光场与气体靶相互作用中真空紫外/极紫外辐射的产生机制,适合等离子体物理、超音速流动力学及量子原子响应方向的研究者与学生使用。代码库提供图…

2026/10/23 14:53:04

Kubernetes实战入门:从零构建可调试单节点集群

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/23 14:53:04

JSP+Servlet+JavaBean手写Web三层架构实战指南

简介:这是一份面向Java Web初学者的MVC架构实战项目资源,基于JSPJavaBeanServlet技术栈,完整实现用户登录注册、留言板交互及数据分页三大核心功能,适用于高校课程设计、Web开发入门实训与传统JavaEE技术栈巩固学习。资源包共78个…

2026/10/23 14:53:04

C#联合HALCON编程:HDevEngine与HDVP脚本集成开发指南

简介:在工业机器视觉系统中,图像算法库与上位机软件的集成是一项常见技术挑战。HALCON作为功能强大的图像处理算法库,提供丰富的算子和脚本机制;C#则以其高效的界面开发与业务逻辑整合能力,成为上位机编程的主流选择。…

2026/10/23 14:47:55

OPTI工具包实战:MATLAB优化建模、MEX编译与多求解器对比

简介:OPTI工具包是为MATLAB环境打造的专业优化求解工具集,面向需要处理线性、非线性、整数、约束及多目标优化问题的工程师、科研人员和在校学习者。它通过MEX接口封装C/C底层算法,兼顾MATLAB易用性与原生执行效率。压缩包内共1152个文件&…

2026/10/22 11:29:28

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/23 0:02:26

Verilog实现FPGA密码锁:矩阵键盘与状态机设计实战

说实话,这几年接触了不少想入门FPGA的朋友,如果你问哪个项目能一口气把Verilog的核心基本功串起来,我通常会推荐电子密码锁。这个项目看着不起眼,却把矩阵键盘扫描、按键消抖、状态机设计、动态显示刷新、外设控制这些数字逻辑里的…

2026/10/23 0:02:26

数据服务监控运维实战:从指标体系到告警治理与故障排查

周末凌晨两点,手机震了。第一反应是“数据服务挂了”。打开电脑看了下,果然,某张核心报表的数据产出时间已经超过SLA两小时,下游三个业务方连着发来问询。这种场景,做过大数据运维的人都不会陌生。数据服务的监控与运维…

2026/10/23 0:02:26

FreeRTOS任务通知实战详解:内核原理、API与避坑指南

裸机编程切到RTOS之后,任务之间的通信和同步永远是躲不开的坎。前面聊过队列、信号量、互斥锁、事件组,这次把FreeRTOS任务通知(Task Notification)单独拎出来讲透。原因很简单:任务通知是FreeRTOS里最容易用错、也最容…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑