Python 判断域名主要涉及到对字符串的解析和验证。域名通常是由多个部分组成,各部分之间使用点(.
)分隔,例如 example.com
。在 Python 中,可以使用正则表达式或标准库中的 socket
模块来验证域名的有效性。
import re
def is_valid_domain(domain):
pattern = r'^((?!-)[A-Za-z0-9-]{1,63}(?<!-)\.)+[A-Za-z]{2,6}$'
return bool(re.match(pattern, domain))
# 测试
print(is_valid_domain("example.com")) # True
print(is_valid_domain("example..com")) # False
import socket
def is_domain_resolvable(domain):
try:
socket.gethostbyname(domain)
return True
except socket.gaierror:
return False
# 测试
print(is_domain_resolvable("example.com")) # True
print(is_domain_resolvable("nonexistentdomain12345.com")) # False
通过以上方法,你可以有效地验证域名的有效性,确保在网络编程和应用开发中使用的域名是合法和可解析的。
领取专属 10元无门槛券
手把手带您无忧上云