Python 3 FTPLIB,NoneType错误和上传/下载

时间:2012-01-18 19:58:31

标签: python list file-upload download ftplib

在我的脚本中,我希望最终能够下载目录和所有子目录中的所有文件......所以我正在尝试FTPLIB。我试图调用我的ftp服务器的dir并将其放入变量中,但我得到NONETYPE?!我可以连接到服务器,当我调用directory = session.dir()它在控制台中显示一种矩阵样式输出文件,读/写权限,日期等....但是当我然后尝试打印我似乎得到的目录是"无"。我最初的想法是将目录中的每个项目下载到我的计算机上,但我似乎无法获得目录列表!

directory = session.dir()
print(str(directory))

对于漫长而可能是微不足道的解释感到抱歉,但我有点太沮丧了。

非常感谢任何帮助!

-Clem

2 个答案:

答案 0 :(得分:2)

首先,请阅读此内容。 http://docs.python.org/library/ftplib.html#ftplib.FTP.nlst

然后,试试这个:

directory = session.nlst()
print(directory)

请注意。 你不需要做print(str(...))。 print函数为您获取字符串表示。

答案 1 :(得分:0)

official docs中,第一个示例显示了如何执行所需操作:使用.retrlines('LIST')读取LIST命令的输出。

另一种方法是使用.nlst()