Я пытаюсь запустить скрипт, находя IP-адреса нескольких устройств.Если я запускаю socket.gethostbyname (router_variable), я получаю «socket.gaierror: [Errno -2] Имя или служба неизвестна».Однако, если я жестко закодирую одну и ту же строку в одно и то же утверждение, она работает нормально.Примечание. Я получил ошибки, комментируя операторы try / исключением.
import socket
class routers():
def __init__(self, router_name, user, password):
try:
self.user=user
self.password=password
self.router_name=router_name
self.ip=socket.gethostbyname(router_name)#####
self.remote = paramiko.SSHClient()
self.remote.set_missing_host_key_policy(paramiko.AutoAddPolicy())
except socket.gaierror:
print("Device name %s unresolved" %router_name)
self.user = "Null"
self.password = "Null"
self.ip = "0.0.0.0"
self.remote = paramiko.SSHClient()
self.remote.set_missing_host_key_policy(paramiko.AutoAddPolicy())