python - 如何使此网络配置代码适用于许多设备?
问题描述
更多在这里寻找建议。我正在编写一些代码(下面的片段)来获取、编辑和优化许多网络设备上的一些配置。我需要处理 1000 多个不同类型的设备,并且需要使这项工作非常高效。因此,了解多处理、使用生成器等会有所帮助,但不太清楚我应该如何在我拥有的此类结构中应用它们?
class Device_optimiser():
@staticmethod
def connector(**args):
ssh_client = paramiko.SSHClient()
for i in args["devices"]:
try:
ssh_client.connect(hostname= i['host'],
username=args['username'],
password=args['password'],
port = 22)
except Exception:
ll.error("bad device")
stdin, stdout, stderr = ssh_client.exec_command(i['command'])
return stdout.read()
@staticmethod
def parser(msg):
parsed_msg = msg + "some work"
return parsed_msg
@staticmethod
def algorithm(parsed_msg):
sort_selected_msg = parsed_msg + "some work"
return sort_selected_msg
@classmethod
def main(cls, info):
ssh_output = Device_optimiser.connector(**info)
parsed_output = Device_optimiser.parser(ssh_output)
Device_optimiser.algorithm(parsed_output)
Device_optimiser.connector(**info)