Pregunta
Necesito descargar un archivo de un host usando SFTP.
¿Sabes si es posible hacerlo usando python ftplib? Yo vi Un ejemplo aquí, pero cuando intento conectarme recibo EOFError
.
Probé este código:
import ftplib
ftp = ftplib.FTP()
ftp.connect( "1.2.3.4", "22" )
Este método regresa con un error después de mucho tiempo, por lo que no puedo realizar una llamada para iniciar sesión. No puedo probar el constructor FTP([host[, user[, passwd[, acct[, timeout]]]]])
Porque mi puerto tiene 22 años pero ftplib
El valor predeterminado es 21.
Si sigo el ejemplo
ftp = ftplib.FTP("1.2.3.4")
ftp = ftplib.FTP("1.2.3.4","22")
Recibo una conexión rechazada para que no pueda ingresar ninguna contraseña de nombre de usuario. ¿Me puedes ayudar? Muchísimas gracias
Solución
Como la pregunta a la que te vinculaste Estados, FTPLIB no admite SFTP (que es FTP sobre SSH y no tiene nada que ver con FTP, FTP sobre SSL). Utilizar el recomendado paramiko en cambio.