Python не добавляет +1 строку - PullRequest
0 голосов
/ 17 октября 2019

Я пишу программу, которая подключается к разным хостам и проверяет время работы с многопоточностью, после чего она записывает информацию в Excel, но в Excel я нахожу только одну написанную строку, пожалуйста, помогите мне

class uptime( object ):
    def __init__( self):
        pass

#@calc FUNCTION TIMER
    def connection( self, host):
        cmd = 'uptime -p'
        outlock = threading.Lock()
        try:
            ssh = paramiko.SSHClient()
            ssh.set_missing_host_key_policy( paramiko.AutoAddPolicy() )
            ssh.connect(host, port=22, username='root', password='cosmogod', timeout=5 )
            stdin, stdout, stderr = ssh.exec_command(cmd)
            with outlock:

                data = stdout.readlines()
                for line in data:
                    print(host +'\t'+ line.strip('\n'))
        except (socket.error, paramiko.AuthenticationException, paramiko.SSHException) as error:
            print(host + '\t' +  str(error))

        ssh.close()

    def exe(self, host, row = lambda row: row+1):

        book = xlsxwriter.Workbook('Example2.xlsx')
        sheet = book.add_worksheet('shhet one')
        row = 0
        column = 0
        sheet.write(row,column,host) <<<---- This one only writes one row in shhet one sheet (not addinng +1 row) 
            #row = lambda row: row + 1
            #row += 1
        book.close()
if __name__ == '__main__':
    c = uptime()
    thread=[]
    with open('all.txt', 'r') as data:
        for line in data:
            time.sleep(.1)
            striped = line.strip('\n')
            main = threading.Thread(target=c.exe, args=(striped,))
            main.start()
            thread.append(main)
        for line in thread:
            main.join()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...