我正在使用下面的 Python 代码使用 Paramiko 通过 SFTP 上传文件。连接“似乎”很好,代码执行到最后,只是当我 checkin 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()
我可以做什么来调试这个?我可以打印任何内容,检查连接是否成功等?
最佳答案
SFTPClient.put
的第二个参数(remotepath
) 是文件的路径,而不是文件夹的路径:
the destination path on the SFTP server. Note that the filename should be included. Only specifying a directory may result in an error.
试试这个:
sftp.put(filePath, "/filename")
关于python - 通过 Paramiko SFTP 上传文件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50736707/