【发布时间】:2010-09-11 20:02:53
【问题描述】:
您可以使用 ftplib 在 Python 中获得完整的 FTP 支持。然而,获取目录列表的首选方式是:
# File: ftplib-example-1.py
import ftplib
ftp = ftplib.FTP("www.python.org")
ftp.login("anonymous", "ftplib-example-1")
data = []
ftp.dir(data.append)
ftp.quit()
for line in data:
print "-", line
产量:
$ python ftplib-example-1.py
- total 34
- drwxrwxr-x 11 root 4127 512 Sep 14 14:18 .
- drwxrwxr-x 11 root 4127 512 Sep 14 14:18 ..
- drwxrwxr-x 2 root 4127 512 Sep 13 15:18 RCS
- lrwxrwxrwx 1 root bin 11 Jun 29 14:34 README -> welcome.msg
- drwxr-xr-x 3 root wheel 512 May 19 1998 bin
- drwxr-sr-x 3 root 1400 512 Jun 9 1997 dev
- drwxrwxr-- 2 root 4127 512 Feb 8 1998 dup
- drwxr-xr-x 3 root wheel 512 May 19 1998 etc
...
我想这个想法是解析结果以获取目录列表。然而,这个列表直接依赖于 FTP 服务器格式化列表的方式。必须预测 FTP 服务器可能会格式化此列表的所有不同方式,为此编写代码会非常麻烦。
是否有一种可移植的方式来获取一个包含目录列表的数组?
(数组应该只有文件夹名称。)
【问题讨论】:
标签: python ftp portability