嘿我想通过python学习FTP并找到一些代码,我一直在测试它,但似乎无法让它工作。
import ftplib
from ftplib import FTP
File2Send = "D:\Backup\ZipFilesToMove\send.txt"
Output_Directory = "\\vm-backupus\FTP\Databases\Sort"
ftp = FTP("xxx.xxx.xxx.xxx") #I have the IP but I didnt want to give it out
ftp.login('ShowME.ftp', 'pword01')
file = open(File2Send, "rb")
ftp.cwd(Output_Directory)
ftp.storbinary('STOR ' + os.path.basename(File2Send), open(file))
print "STORing File now..."
ftp.quit()
file.close()
我不断收到此错误,任何想法以及解决方法。
Traceback (most recent call last):
File "C:\BackupFiles\Test.py", line 9, in <module>
ftp.cwd(Output_Directory)
File "C:\Python27\lib\ftplib.py", line 562, in cwd
return self.voidcmd(cmd)
File "C:\Python27\lib\ftplib.py", line 254, in voidcmd
return self.voidresp()
File "C:\Python27\lib\ftplib.py", line 229, in voidresp
resp = self.getresp()
File "C:\Python27\lib\ftplib.py", line 224, in getresp
raise error_perm, resp
error_perm: 550 The system cannot find the path specified.
答案 0 :(得分:0)
你的道路错了:
File "C:\BackupFiles\Test.py", line 9, in <module>
ftp.cwd(Output_Directory)
error_perm: 550 The system cannot find the path specified.
此外,它看起来很可疑:
Output_Directory = "\\vm-backupus\FTP\Databases\Sort"
您的双反斜杠表示Windows网络共享语法,而不是FTP路径。您尝试将目录更改为的路径应该是FTP根目录的相对路径或绝对路径。看起来您正在尝试更改目录位于FTP服务器之外的位置,而不是位于其中。
您应该使用FTP客户端使用用户名和密码登录服务器,并验证绝对路径是什么。它不会以“\”开头,也不会使用反斜杠。类似于'/ Databases / Sort'
另外,请确保您的名称正确。例如,'vm-backupus'更可能是'vm-backups'。
答案 1 :(得分:0)
错误550 The system cannot find the path specified.
告诉您服务器的路径无效。
换句话说,这个:\\vm-backupus\FTP\Databases\Sort
不是FTP服务器上的有效位置。