ftplib.error\u perm:如何在ftp命令行客户机中稳定连接?

wb1gzix0  于 2021-07-13  发布在  Java
关注(0)|答案(1)|浏览(258)

我试图写一个ftp命令行客户端就像linux二进制文件,但我不能简单地发送一个命令到服务器。

import argparse
from ftplib import FTP

parser = argparse.ArgumentParser()
parser.add_argument('ip')
parser.add_argument('port', type=int)
args = parser.parse_args()

user = str(input('[*] Please insert USER: '))
passwd = str(input('[*] Please insert PASS: '))

ftp = FTP(host=str(args.ip), passwd=passwd)
ftp.connect(host=args.ip, port=args.port)
print(ftp.getwelcome())

while True:
    command = str(input('ftp> '))
    ftp.sendcmd(command)

并得到以下错误:

Traceback (most recent call last):
  File "ftp.py", line 18, in <module>
    ftp.sendcmd(command)
  File "/usr/lib/python3.7/ftplib.py", line 273, in sendcmd
    return self.getresp()
  File "/usr/lib/python3.7/ftplib.py", line 246, in getresp
    raise error_perm(resp)
ftplib.error_perm: 530 Please login with USER and PASS.

我想这是因为服务器在我发送命令之前就关闭了连接。那么,我怎样才能稳定与服务器的连接,直到我想退出?

dxxyhpgq

dxxyhpgq1#

我认为这个错误是关于你的用户权限和目录权限。你使用匿名用户吗?检查一下。

相关问题