如何使用Ruby检查域是否存在?
-
01-10-2019 - |
题
与:
def domain_exists?(domain)
# perform check
# return true|false
end
puts "valid!" if domain_exists?("example.com")
解决方案
如果要检查域是否已注册,则需要执行WHOIS查询。http://www.ruby-whois.org/
其他提示
require 'socket'
def domain_exists?(domain)
begin
Socket.gethostbyname(domain)
rescue SocketError
return false
end
true
end
使用Ruby-Whois非常容易:
安装宝石和需求。
a = whois.whois(“ google.com”)
A.可用? => false
如果您通过Ruby Gems安装它也有一个CLI捆绑:Ruby-Whois
网页: ruby-whois.org
您可以这样向NSlookUp求助:
`nslookup #{domain}`
并将结果解析为带有Regexes等的文本
或者您可以使用 插座 类,专门插座。GetAddrinfo。请参阅上一个 stackoverflow答案 关于这个问题。
不隶属于 StackOverflow