如果某个域名变得陈旧,它通常仍会使用一些无用的链接来回复 HTTP 请求,有时甚至没有明确的“此域名已过期/待售”消息,而根本无法解析。
如何在不使用浏览器的情况下自动确定“无效”(过期/未延长)域名?可以使用whois
工具来完成吗?
期望这样的事情:
while true; do
if ! checkdomain something-on-verge-of-abandoning-business.com; then
echo "Good night, sweet prince"
break
fi
sleep 1d
done
例如,让我们看看域名allmydata.com
。据我所知,Allmydata 应该有一些基于 Tahoe-LAFS 的备份服务。但实际上它是停放域名。
$ whois allmydata.com
...
Domain Name: ALLMYDATA.COM
Registrar: DOMAIN MONKEYS, LLC
Whois Server: whois.domainmonkeys.com
Referral URL: http://www.domainmonkeys.com
Name Server: NS1.DSREDIRECTION.COM
Name Server: NS2.DSREDIRECTION.COM
Status: clientTransferProhibited
Updated Date: 04-aug-2013
Creation Date: 03-aug-2004
Expiration Date: 03-aug-2014
...
$ dig +short -t A allmydata.com @8.8.8.8
208.73.211.247
这项浅显的检查显示这似乎是一个好的域名。但如何可靠地(即不启发式地解析页面并根据内容衡量“垃圾邮件”或“停放”)检测出这种情况?
答案1
您可以使用 python 读取 html 内容,然后搜索“域名可用”/“停放”/“续订”等关键字。您可以向其输入域名的 CSV 文件,然后将结果输出为 CSV,这样您就得到了一个域名列表。
另一个想法是使用类似以下方法解析 whois 记录这并解析续订日期的结果。这就是我的做法。