Как я могу использовать Ruby, чтобы проверить, существует ли домен?

StackOverflow https://stackoverflow.com/questions/2695020

Вопрос

Что-то вдоль линий:

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. Увидеть предыдущее Ответ стойки На этот самый вопрос.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top