2017-05-08 54 views
1

我正在嘗試使用ftplib模塊使用來自Python的ftp代理連接到ftp站點。使用ftplib在Python中進行FTP代理

當我手工做它的命令行,它的工作原理:

$ ftp ftpproxy.services 
Connected to ftpproxy.services 
Name (ftpproxy.services:myaccount): myuser 
230- user myuser logged in. 
230 [002-0024] Specify Remote Destination with: quote site hostname 
Remote system type is UNIX. 
ftp> quote site mysite.com 
220-( [002-0059] Firewall connected to mysite.com (192.x.x.x).) 
220-(220 ProFTPD 1.3.4d Server ready.) 
220 [002-0060] login with: user name 

當使用Python 3.5或Python 2.7.5它似乎並不接受我的「報價網站mysite.com」命令:

>>> ftp = FTP('ftpproxy.services', user='myuser') 
>>> ftp.set_debuglevel(1) 
>>> ftp.sendcmd("quote site mysite.com") 
*cmd* 'quote site mysite.com' 
*resp* '200 [002-0046] Specify Remote Destination with: quote site hostname' 
'200 [002-0046] Specify Remote Destination with: quote site hostname' 

其他似乎有在過去的這個沒有問題,看link

回答

1

感謝this我已經想通了。

使用FTPLIB,你不應該在「引用網站mysite.com」使用「引用」,所以不是ftp.sendcmd("quote site mysite.com"),只是使用ftp.sendcmd("site mysite.com"),然後它的作品。