2009-10-21 26 views
11

He estado buscando un módulo que me permita hacer funciones SSH/SFTP en python sin utilizar POPEN para hacerlo manualmente. ¿Hay algo como esto? No he encontrado ninguna información real sobre esto, ¡gracias!Python SSH/SFTP Module?

+1

paramiko? http://stackoverflow.com/search?q=[python]+ssh+sftp – jfs

Respuesta

2

Para SFTP, puede usar pysftp, que es un envoltorio delgado sobre el SFTPClient de paramiko (pip install sftp).

Ejemplo para descargar un archivo:

import pysftp #pip install sftp 
import sys 

hostname = "128.65.45.12" 
username = "bob"  
password = "123456" 

sftp = pysftp.Connection(hostname, username=username, password=password) 

sftp.get('/data/word_vectors/GoogleNews-vectors-negative300.txt', preserve_mtime=True) 
print('done') 
0

Hay un envoltorio paramiko, ssh_decorate que se ejecutará el código Python de forma remota para usted:

from ssh_decorate import ssh_connect 
ssh = ssh_connect('user','password','server') 

@ssh 
def python_pwd(): 
    import os 
    return os.getcwd() 

print (python_pwd()) 

no puede ser más sencillo

+0

** Puede usar el módulo python paramiko: ** http://docs.paramiko.org/en/2.3/ ** Alternativamente **, puede usar el módulo netmiko para la conexión ssh. [https://pynet.twb-tech.com/blog/automation/netmiko.html] –

+0

Por favor, lea mi respuesta de nuevo, estoy recomendando 'paramiko'. todo 'ssh_decorate' lo hace, ejecuta' python' de forma remota a través de 'ssh' usando una sintaxis más simple que paramiko –