Я проверяю статус хоста ip для списка домена с помощью socket.gethostbyname lib.Таким образом, у меня есть список доменов, который выполняет итерации по циклу, чтобы получить соответствующий IP для каждого и проверяя их по списку IP.
при итерации по списку доменов, если сокет не может вернуть IP длялюбой домен, он выдает ошибку исключения и прекращает проверку статуса для остальных доменов из списка
def verifY_And_get_Server_status():
domains = ['a.com','b.com','c.com']
ipList=['ip1','ip2','ip3']
print("List of domins",domains)
try:
for value in domains:
ip =get_HostName(value)
print("IP of the domain ",ip)
if ip in iplist:
print('ip found', ip)
else:
print('Ip is not listed', ip)
except ConnectionError as e:
print("Error due to ")
def get_HostName(domainName):
try:
domain_ip = socket.gethostbyname(domainName)
print("Domain IP is",domain_ip)
return domain_ip
except ConnectionError as e:
print("Error log",e)
#Error iam getting
domain_ip = socket.gethostbyname(domainName)
socket.gaierror: [Errno 11001] getaddrinfo failed
Ожидается: мне нужно получить статус домена следующим образом: если сокет возвращает IP,условие if должно показывать ip, а если сокет не возвращает ip, оно также должно показывать ip и причину как сообщение.И цикл не должен прекращать проверку оставшихся доменных имен.
Фактически: во время итерации цикла предположим, что сокет не может вернуть ip для домена «a.com» из-за ошибки подключения или состояния отключения, он выдает ошибку исключения и цикл останавливает проверку статуса оставшегося домена из списка.
Оцените, если кто-нибудь может помочь в этом?