使用chilkat python将zip文件上载到SFTP服务器

2024-09-30 08:34:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用以下脚本在SFTP服务器上上载zip文件。虽然我在服务器上看到了这个文件,但它总是显示它是0 Kb

#Code to upload file to a SFTP server abc.com
import chilkat
sftp = chilkat.CkSFtp()
success = sftp.UnlockComponent("Anything trial")
puttyKey = chilkat.CkSshKey()
ppkText = puttyKey.loadText("xyz.ppk")
success = puttyKey.FromPuttyPrivateKey(ppkText)
sshHostname = "abc.com"
sshPort = 22
success = sftp.Connect(sshHostname,sshPort)
sftp.AuthenticatePwPk("username", "password", puttyKey)
success = sftp.InitializeSftp()
filename = "file.zip"
handle = sftp.openFile(filename ,"writeOnly","createTruncate")
success = sftp.UploadFile(handle,"file.zip")
success = sftp.CloseHandle(handle)

Tags: 文件to服务器comzipfilesuccesssftp
1条回答
网友
1楼 · 发布于 2024-09-30 08:34:36

您没有检查调用的成功返回值。如果openFile和CloseHandle都成功了,但是UploadFile失败了,那么结果将是服务器上一个0长度的文件。在

您传递的文件名没有上载文件的路径。这意味着您正在尝试上载文件“文件.zip“从应用程序的当前工作目录,不管是什么。我怀疑”文件.zip“实际上不在应用程序的当前工作目录中。您可以指定完整的绝对路径或相对路径,而不是“文件.zip". 例如,“c:\someDir\文件.zip". 在

另外,如果在检查方法调用的成功/失败后发现它失败,请检查对象的LastErrorText属性的内容(sftp.LastErrorText文件). 它将提供方法调用中发生的详细信息。在

相关问题 更多 >

    热门问题