Pregunta

Algo a lo largo de las líneas de:

def domain_exists?(domain)
  # perform check
  # return true|false
end

puts "valid!" if domain_exists?("example.com")
¿Fue útil?

Solución

Si desea comprobar si un dominio está registrado o no, entonces usted necesita para llevar a cabo una consulta Whois. http://www.ruby-whois.org/

Otros consejos

require 'socket'

def domain_exists?(domain)
  begin
    Socket.gethostbyname(domain)
  rescue SocketError
    return false
  end

  true
end

Con rubí whois es bastante fácil:

Instalar joya y requiere.

a = Whois.whois ( "google.com")

a.available? => False

También hay un paquete CLI si se instala a través de las gemas de rubí: rubí whois

página web en: ruby-whois.org

Se podría desembolsar a nslookup como esto:

`nslookup #{domain}`

y analizar los resultados como texto con expresiones regulares, etc.

O puede utilizar el zócalo clase, específicamente Socket.getaddrinfo. Ver anterior Stackoverflow respuesta en este misma pregunta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top