2012-08-07 30 views
4

我试图从远程服务器将80 MB文件夹下载到本地计算机上。我知道文件路径是正确的,我知道该文件夹存在。我目前的工作代码(可在单个文件)是这样的:如何使用Paramiko传输文件夹

import paramiko 

def begin(): 
    tran=paramiko.Transport(('dns.server.name', 22)) 
    tran.connect(username='**',password='**') 
    sftp=paramiko.SFTPClient.from_transport(tran) 
    sftp.get('/remote/file/path', '/local/file/path') 
    sftp.close() 
    tran.close() 

我已经尝试添加sftp.listdir,但我怕我不能在主题找到足够的文件,以使其理解或可用于我。有没有可用的东西看起来像os.walk?

我的问题是 - 如何通过paramiko中的ssh2协议下载小文件夹?

+0

是。感谢您指出了这一点。 – Fuhton 2012-08-08 11:00:23

回答

2

我的建议传输整个文件夹,而不是,你应该先在服务器上的临时压缩tar文件programmetically和转让使用sftp在网络tar文件 - 可以减少窗宽/的运行速度更快,将是不容易出错。

相关问题