通过 Paramiko SFTP 上传文件不起作用

use*_*112 2 python sftp paramiko

我正在使用以下 Python 代码使用 Paramiko 通过 SFTP 上传文件。连接“似乎”很好,代码执行到最后,只是当我签入 FileZilla 时文件没有到达目的地。

我已经检查并将文件的权限设置为 777(只是为了确定)。我还在一个单独的终端中检查了我的文件路径字符串,路径是有效的。

import paramiko
.
.

transport = paramiko.Transport((host, port))
transport.connect(username = username, password = password)
sftp = paramiko.SFTPClient.from_transport(transport)

sftp.put(filePath, "/")  # Upload file to root FTP folder
sftp.close()
transport.close()
Run Code Online (Sandbox Code Playgroud)

我能做些什么来调试这个?我可以打印出什么,检查连接是否成功等?

Mar*_*ryl 6

SFTPClient.put( remotepath)的第二个参数是文件的路径,而不是文件夹:

SFTP 服务器上的目标路径。请注意,应包括文件名。仅指定目录可能会导致错误。

尝试这个:

sftp.put(filePath, "/filename")
Run Code Online (Sandbox Code Playgroud)