Python解决SFTP服务器上下载⽂件到本地# coding=utf-8
import paramiko
import os
def DownLoadFile(sftp,LocalFile,RemoteFile): # 下载当个⽂件
file_handler = open(LocalFile, 'wb')
print(file_handler)
<(RemoteFile, LocalFile) # 下载⽬录中⽂件
file_handler.close()
return True
def DownLoadFileTree(sftp, LocalDir, RemoteDir): # 下载整个⽬录下的⽂件
if not ists(LocalDir):
os.makedirs(LocalDir)
for file in sftp.listdir(RemoteDir):
Local = os.path.join(LocalDir, file)
Remote=os.path.join(RemoteDir, file)
if file.find(".") == -1:#判断是否是⽂件
if not ists(Local):
os.makedirs(Local)
DownLoadFileTree(sftp,Local, Remote)
else:#⽂件
DownLoadFile(sftp,Local, Remote)
return "complete"
if __name__ == '__main__':
host = ' '#主机
port = #端⼝
username = '' #⽤户名
password = '' #密码
sf = paramiko.Transport((host, port))
sftp = paramiko.SFTPClient.from_transport(sf)
connect下载local = 'D:\datadisk2_hdf5'#本地⽂件
remote = '\SH-2-0'#远程⽂件或⽬录
DownLoadFileTree(sftp,local,remote)#下载

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。