Как я могу использовать 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 довольно легко:
Установите GEM и требую.
A = WHOIS.whois («Google.com»)
доступна? => false.
Есть также CLI в комплекте, если вы устанавливаете его через Ruby Gems: Ruby-Whois
Веб-страница по адресу: Ruby-whois.org.
Вы могли бы выломаться на Nslookup, как это:
`nslookup #{domain}`
и разбирать результаты в виде текста с регенсом и т. Д.
Или вы можете использовать Разъем Класс, специфически сокет. GetAddrinfo. Увидеть предыдущее Ответ стойки На этот самый вопрос.
Не связан с StackOverflow