In einem Projekt musste ich überprüfen, ob die übergebene Zeichenfolge eine Domäne war, also habe ich mich damit befasst.
import socket
domain = "qiita.com"
class DomainError(BaseException): pass
def check_domain(domain):
if domain.find(".") != -1:
try:
host = socket.gethostbyname(domain)
return True
except socket.gaierror:
raise DomainError("domain not found.")
else:
raise DomainError("this is not domain.")
Überprüfen Sie zunächst, ob die Domänenzeichenfolge Punkte enthält, und verwenden Sie dann die Funktion socket.gethostbyname
des Moduls ** socket **, um die ** Domänenzeichenfolge in eine IP-Adresse zu konvertieren. ** Wenn dies funktioniert, wird True zurückgegeben, da die angegebene Domänenzeichenfolge eine normale Domäne ist. Wenn die Funktion einen Fehler ausgibt, handelt es sich nicht um eine normale Domäne, die einen Fehler auslöst.
Recommended Posts