Usando el ftplib de Python para obtener una lista de directorios, de manera portátil
Puedes usar ftplib para soporte completo de FTP en Python. Sin embargo, la forma preferida de obtener una lista de directorios es:
# 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
Cuyos rendimientos:
$ 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
...
Supongo que la idea es analizar los resultados para obtener el listado del directorio. Sin embargo, esta lista depende directamente de la forma en que el servidor FTP formatee la lista. Sería muy complicado escribir código para que tenga que anticipar todas las formas en que los servidores FTP pueden formatear esta lista.
¿Hay una forma portátil de llenar una matriz con la lista de directorios?
(La matriz solo debe tener los nombres de las carpetas.)