FTP通过Python无法让它移动文件

时间:2015-10-06 18:22:38

标签: python

嘿我想通过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. 

2 个答案:

答案 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服务器上的有效位置。