Usando o ftplib do Python para obter uma lista de diretórios, portável
Você pode usar ftplib para suporte FTP completo em Python. No entanto, a maneira preferida de obter uma listagem de diretórios é:
# 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
Quais os rendimentos:
$ 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
...
Eu acho que a idéia é analisar os resultados para obter a listagem do diretório. No entanto, esta listagem depende diretamente da maneira como o servidor FTP formata a lista. Seria muito confuso escrever código para isso, tendo que antecipar todas as maneiras diferentes pelas quais os servidores FTP podem formatar essa lista.
Existe uma maneira portátil de obter uma matriz preenchida com a listagem do diretório?
(A matriz deve ter apenas os nomes das pastas.)