Wie kann ich Rubin verwenden, um zu überprüfen, ob eine Domain existiert?
-
01-10-2019 - |
Frage
Etwas entlang der Linien von:
def domain_exists?(domain)
# perform check
# return true|false
end
puts "valid!" if domain_exists?("example.com")
Lösung
Wenn Sie, ob eine Domain registriert überprüfen wollen oder nicht, dann müssen Sie eine Whois-Abfrage auszuführen. http://www.ruby-whois.org/
Andere Tipps
require 'socket'
def domain_exists?(domain)
begin
Socket.gethostbyname(domain)
rescue SocketError
return false
end
true
end
Mit rubin whois ist recht einfach:
gem installieren und benötigen.
a = Whois.whois ( "google.com")
a.available? => False
Es gibt auch eine CLI gebündelt, wenn Sie es über Rubin Edelsteine ??zu installieren: Rubin-whois
Web-Seite unter: ruby-whois.org
Sie könnten berappen so nslookup:
`nslookup #{domain}`
und analysiert die Ergebnisse als Text mit regulären Ausdrücken etc.
Sie können auch die Sockel Klasse, speziell Socket.getaddrinfo. Siehe vorherige Stackoverflow Antwort auf diese sehr Frage.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow