paramiko能否实现从上次中断点继续上传的功能

can paramiko has the function to implememt uploading continue from the point from last interruption

我需要实现一个上传功能,它可以通过 sftp 从上次中断的点继续。

我正在尝试 paramiko。但我不喜欢任何关于此的例子。有人可以给我一些建议吗?

此致

SFTP.open(mode='a')appending 模式打开文件。所以首先你可以调用 SFTP.stat() 来获取文件的当前大小(在远程端)然后 open(mode='a') 它并向它附加新数据。

根据whjm的建议,我写了下面的代码,效果很好。希望能帮助到更多人:

if filename in file_list:
    stat = sftp.stat(remot_dir + filename)
    f_local = open(local_dir + filename)
    f_local.seek(stat.st_size)
    f_remote = sftp.open(remot_dir + filename, "a")
    tmp_buffer = f_local.read(100000)
    while tmp_buffer:
        f_remote.write(tmp_buffer)
        tmp_buffer = f_local.read(100000)
    f_remote.close()
    f_local.close()
else:
    f_local = open(local_dir + filename)
    f_remote = sftp.open(remot_dir + filename, "w")
    tmp_buffer = f_local.read(100000)
    while tmp_buffer:
        f_remote.write(tmp_buffer)
        tmp_buffer = f_local.read(100000)
    f_remote.close()
    f_local.close()