Python - SFTP

SFTP também é conhecido como SSH File Transfer Protocol. É um protocolo de rede que fornece acesso e transferência de arquivos e gerenciamento de arquivos em qualquer fluxo de dados confiável. O programa é executado em um canal seguro, como SSH, que o servidor já autenticou o cliente e que a identidade do usuário cliente está disponível para o protocolo.

o pysftpmódulo é uma interface simples para SFTP. O módulo oferece abstrações de alto nível e rotinas baseadas em tarefas para lidar com as necessidades de SFTP. Portanto, instalamos o módulo em nosso ambiente Python com o comando abaixo.

pip install pysftp

Exemplo

No exemplo a seguir, fazemos login em um servidor remoto usando sftp e, em seguida, obtemos e colocamos algum arquivo nesse diretório.

import pysftp
with pysftp.Connection('hostname', username='me', password='secret') as sftp:
    with sftp.cd('/allcode'):           # temporarily chdir to allcode
        sftp.put('/pycode/filename')  	# upload file to allcode/pycode on remote
        sftp.get('remote_file')         # get a remote file

Quando executamos o código acima, podemos ver a lista de arquivos presentes no diretório allcode e também colocar e obter algum arquivo nesse diretório.