如何在 Delphi 10.3.3 Pro 中使用 Indy 获取域名的到期日期?

问题描述

如何使用 Indy 的 TIdWhois 组件获取域名的到期日期?

我不想获取完整的 WHOIS 数据,只想获取到期日期。

我使用了这个代码

IdWhois1.Host:= edit1.Text;
memo1.Lines.Text := IdWhois1.WhoIs (edit2.Text);

这会显示完整的 WHOIS 数据。

解决方法

您不能:WHOIS protocol stores data in a human-readable format,这就是为什么您只有文本并且不能专门查询日期然后甚至以非文本类型获取它的原因。

自己解析文本:找到与您期望的大部分内容相匹配的行,然后将日期从文本转换为您喜欢的数据类型。预计 WHOIS 结果没有到期行或到期行为空。