我有一个文件>500 MB可以使用sftp连接下载,我尝试使用pysptp并获得错误SSHException: Server connection dropped:。
import pysftp
import sys
myHostname = "dbfiles.xyz.org"
myUsername = "XXXX"
myPassword = "YYYY"
cnopts = pysftp.CnOpts()
cnopts.hostkeys = None
with pysftp.Connection(host=myHostname, username=myUsername, password=myPassword,cnopts=cnopts) as sftp:
print("Connection succesfully stablished ... ")
localFilePath = 'c:/....'
remoteFilePath = sftp.listdir('/folder/')
for filename in remoteFilePath:
if 'string_to_match' in filename:
local_path = localFilePath + filename
print (filename)
print (local_path)
sftp.get("folder/" + filename, local_path)下载18 of文件后获取SSHException: Server connection dropped: EOF error。有什么办法可以限制下载的数据量或延迟这个get进程以获得完整的文件,我尝试了几种方法,但由于文件大小大,无法下载完整的文件。任何帮助都很感激。
发布于 2021-12-07 15:23:41
转到stfp_file.py中的Paramiko库并将MAX_REQUEST_SIZE更改为1024。对我起作用了。您可以在这里找到这个包: /home//.local/lib/python3.8/site-packages/paramiko/sftp_file.py
https://stackoverflow.com/questions/59989100
复制相似问题