/ / No se puede llamar a un procedimiento usando el parámetro SFTP - Python - python

No se puede llamar a un procedimiento utilizando el parámetro SFTP - Python - python

¿Sabes por favor cómo puedo llamar a este procedimiento?

#### Transfer Files ####
import stat
def downLoadFile(sftp, remotePath, localPath):
for fileattr in sftp.listdir_attr(remotePath):
if stat.S_ISDIR(fileattr.st_mode):
sftp.get(fileattr.filename, os.path.join(localPath,fileattr.filename))

Después de definir local_Path y remote_Path, llamé a la función de la siguiente manera:

downLoadFile(sftp , remote_Path, local_Path)

Pero recibí este mensaje de error, ¿podría avisarme?

Rastreo (llamadas recientes más última): Archivo "C: Nessus-Connection.py", línea 35, en downLoadFile (sftp, remote_Path, local_Path) NameError: el nombre "sftp" no está definido

Respuestas

0 para la respuesta № 1

Necesitas instalar pysftp. Los documentos dan ejemplos de cómo usarlo:

import pysftp

with pysftp.Connection("hostname", username="me", password="secret") as sftp:
with sftp.cd("public")              # temporarily chdir to public
sftp.put("/my/local/filename")  # upload file to public/ on remote

sftp.get_r("myfiles", "/backup")    # recursively copy myfiles/ to local

No puede usar una biblioteca sin primero instalarla y luego importarla.