2012-04-18 91 views
3

我在ubuntu 11.10发行版上使用Python 2.7。Python模块ftplib FTP_TLS - 错误530

我有一个ftplib模块和FTP_TLS连接的问题。 在我的FTP服务器有VSFTP

当尝试连接我收到此错误:

ftplib.error_perm:530请USER和PASS登录。

这是我的代码:

from ftplib import FTP_TLS 
ftp = FTP_TLS('192.168.1.5') 
ftp.login('user' , 'password') 
ftp.close() 

无论如何,如果我用简单的FTP连接,FTP = FTP( '192.168.1.5'),它的工作原理!

但我需要FTP_TLS连接。我也尝试插入参数ftp.auth()和ftp.prot_p(),但没有任何反应。

回答

0

尝试TLS LiteM2Crypto都是FTP/TLS客户端和服务器。

+0

谢谢。我会试试看。 – 2012-04-18 10:53:48

+0

我更喜欢m2crypto,但选择是你的:) – 2012-04-18 10:58:16

4

FTP_TLS类似乎不能很好地处理登录。不幸的是,你必须明确地将这些命令发送到服务器上。

from ftplib import FTP_TLS 

# Do *not* specify the user and password in the FTP_TLS constructor arguments. 
# Doing so will cause ftplib to try to login, resulting in the 530 error. 
ftp = FTP_TLS('ftp.somewhere.com') 
ftp.sendcmd('USER myusername') # '331 Please specify the password.' 
ftp.sendcmd('PASS mypassword') # '230 Login successful.' 
+0

它仍然是这样的情况:C – 2017-03-31 13:31:43