[Python] Download de arquivos de um servidor FTP e direcionar para uma pasta especifica com...

Discussão em 'Python' iniciado por Stack, Outubro 24, 2024.

  1. Stack

    Stack Membro Participativo

    Salve Pessoal, tudo bem?

    Estou fazendo um script em python com ftplib para coleta de oscilografia de um determinado equipamento, esse equipamento tem um servidor FTP onde armazena os arquivos.

    No projeto consigo navegar até a pasta onde fica os arquivos para download e já consigo baixa-las, porem preciso organizar os downloads, visto que tenho uma lista de IPs e percorro esses IPs, faço a conexão, navego até a pasta onde encontra-se os aquivos e executo o downlad.

    Todos os arquivos estão ficando em apenas um local, estou precisando organizar eles da seguinte forma... de acordo com o IP eu crio uma pasta com determinado nome e baixo os arquivos para esta pasta no caminho do diretório especificado. Ex: IP 10.10.10.1, cria pasta para esse IP em um diretório especificado e depois baixa os quivos para essa pasta, logo depois passa para o outro IP 10.10.10.1, cria a pasta para ele e faz o downlad atrelado a ele. Outra coisa que queria era atrelar o hario que esse aquivo foi criado na nome dele.

    Queria saber também se existe a possibilidade que se um equipamento não responder aguardar alguns segundo e refazer a tentativa de conexão, caso não consiga em 3 tentativas ele pula e já vai para outro equipamento.

    Segue uma parte do código.:

    '''

    importando as libs.


    from ftplib import FTP import os

    limpando o prompt


    os.system('cls')

    RELES = ['IPs dos relés aqui']

    interando sobre a lista de RELES para que a cada IP passando ele tente a conexão.


    for rele in RELES: # Tentando conexão com o os Reles try: # Estanciando a classe FTP ftp = FTP(rele, timeout=0.3)

    # tentando a conexão passando usuario e senha do relé que será feita a conexão.
    ftp.login(user=FTP_USER, passwd=FTP_PASSWORD)

    # Navegando até a pasta onde encontr-se as Oscilografias
    ftp.cwd(OSCILOGRAFIA_FOLDER)

    # Listando as oscilografias geradas.
    oscilo_files = ftp.nlst()

    # Percorrendo a lista de oscilografias gerada pelo ftp.nlist()
    for osclo_file in oscilo_files:

    print(f'Teste oscilografia: {osclo_file}')

    print(f'---------------------------------')
    ftp.quit()

    except Exception as e:
    print('Tivemos problemas na conexao')


    '''

    Desde já Obrigadão pela ajuda pessoal, forte abraço!

    Continue reading...

Compartilhe esta Página