Python SFTP:使用SFTP将内存流放入远程文件夹。类似于Ftp Stor二进制

Python SFTP: Use SFTP to put memory stream into remote folder. Like FTP storbinary(Python SFTP:使用SFTP将内存流放入远程文件夹。类似于Ftp Stor二进制)
本文介绍了Python SFTP:使用SFTP将内存流放入远程文件夹。类似于Ftp Stor二进制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在使用Python中的paraMiko。我需要SFTP一个文件到一个远程的Linux机器(开发平台是Windows)。以下是代码(正在运行)

import paramiko
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(HOST, username=USERNAME, password=PASSWORD)
stdin, stdout, stderr = client.exec_command("cd %s; pwd" % PATH)
data = stdout.readlines()
print "Current folder:"
for line in data:
    print (line.rstrip())
sftp = client.open_sftp()
sftp.put(local_path, PATH + '/' + FILE_NAME, confirm = True)

sftp.close() 
client.close()

这运行得很好。但要调用Put(),我需要将文件保存到LOCAL_PATH,这需要很长时间。

我想知道是否有一种方法可以像ftp一样在内存流中使用sftp。 对于ftp,使用In Memory Stream(工作中)速度更快:

import ftplib
ftp_conn = ftplib.FTP(HOST, USERNAME, PASSWORD)
ftp_conn.cwd(FILE_PATH)
ftp_conn.storbinary('STOR '+posixpath.basename(FILE_PATH), buffer, blocksize=1024)
ftp_conn.close()

非常感谢!

推荐答案

现在可以使用类似文件的对象: http://docs.paramiko.org/en/stable/api/sftp.html#paramiko.sftp_client.SFTPClient.putfo

这篇关于Python SFTP:使用SFTP将内存流放入远程文件夹。类似于Ftp Stor二进制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)