У меня есть список устройств Cisco, к которым я подключаюсь и извлекаю некоторые выходные данные, но этот список слишком длинный. Это занимает много времени через питона - PullRequest
0 голосов
/ 23 октября 2019

У меня есть список устройств Cisco, которые мне нужны, чтобы войти в систему и выполнить несколько команд. Я автоматизировал его и извлек вывод в лист Excel с помощью Python Paramiko. Но список слишком длинный, и для получения доступа к каждому устройству и выполнения этих команд через скрипт требуется очень много времени. Есть ли другой альтернативный оптимизированный код, который кто-нибудь знает, чтобы ускорить эту задачу.

for hostname in reader['IP_Address']: #Each dev
    print (hostname)
    count=count+1
    try:
        conn = ssh.connect(hostname, username=user, password=passw)
        stdin, stdout, stderr = ssh.exec_command(cmd)
        current_time = datetime.datetime.fromtimestamp(ts).strftime('%A-%d-%b-%Y %H-%M-%S')
        exit_status= stdout.channel.recv_exit_status()

        if exit_status == 0:
            """outfile.write("\n")"""
            worksheet.write(row,column,str(hostname))
            for out in stdout.readlines():
                row=row+1
                column=0
                m = re.search('PID\:(.+?)\,', out)
                if m:
                    print(m.group(1))
                    worksheet.write(row,column,m.group(1))
                p = re.search('SN\:(.+?)\n', out)
                if p:
                    print(p.group(1))
                    worksheet.write(row,column+1,p.group(1))
                """outfile.write(out)"""
...