Verwenden von Pythons ftplib, um portabel eine Verzeichnisliste zu erhalten
Sie können ftplib für die vollständige FTP-Unterstützung in Python verwenden. Der bevorzugte Weg, eine Verzeichnisliste zu erhalten, ist jedoch:
# 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
Welche Erträge:
$ 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
...
Ich denke, die Idee ist, die Ergebnisse zu analysieren, um die Verzeichnisliste zu erhalten. Diese Auflistung hängt jedoch direkt von der Formatierung der Liste durch den FTP-Server ab. Es wäre sehr umständlich, Code dafür zu schreiben, wenn man all die unterschiedlichen Arten vorwegnehmen müsste, wie FTP-Server diese Liste formatieren könnten.
Gibt es eine tragbare Möglichkeit, ein Array mit der Verzeichnisliste zu füllen?
(Das Array sollte nur die Ordnernamen enthalten.)