使用Python和pysftp从一个SFTP流式传输到另一个SFTP可以通过以下步骤实现:
import pysftp
source_host = 'source_host'
source_username = 'source_username'
source_password = 'source_password'
source_cnopts = pysftp.CnOpts()
source_cnopts.hostkeys = None
source_sftp = pysftp.Connection(host=source_host, username=source_username, password=source_password, cnopts=source_cnopts)
在这里,你需要将source_host
替换为源SFTP服务器的主机名或IP地址,source_username
替换为源SFTP服务器的用户名,source_password
替换为源SFTP服务器的密码。
target_host = 'target_host'
target_username = 'target_username'
target_password = 'target_password'
target_cnopts = pysftp.CnOpts()
target_cnopts.hostkeys = None
target_sftp = pysftp.Connection(host=target_host, username=target_username, password=target_password, cnopts=target_cnopts)
在这里,你需要将target_host
替换为目标SFTP服务器的主机名或IP地址,target_username
替换为目标SFTP服务器的用户名,target_password
替换为目标SFTP服务器的密码。
source_file_path = '/path/to/source/file'
target_file_path = '/path/to/target/file'
with source_sftp.open(source_file_path, 'rb') as source_file:
with target_sftp.open(target_file_path, 'wb') as target_file:
for chunk in source_file:
target_file.write(chunk)
在这里,你需要将/path/to/source/file
替换为源SFTP服务器上要传输的文件的路径,将/path/to/target/file
替换为目标SFTP服务器上要保存的文件的路径。
source_sftp.close()
target_sftp.close()
这样,你就可以使用Python和pysftp从一个SFTP流式传输到另一个SFTP了。
关于pysftp和SFTP的更多信息,你可以参考腾讯云的相关产品和文档:
领取专属 10元无门槛券
手把手带您无忧上云