Vous pouvez utiliser ftplib pour une prise en charge FTP complète en Python. Cependant, le meilleur moyen d'obtenir une liste de répertoires est:Utilisation de ftplib de Python pour obtenir une liste de répertoires, portabled
# 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
qui donne:
$ 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
...
Je pense que l'idée est d'analyser les résultats pour obtenir la liste des répertoires. Cependant, cette liste dépend directement du formatage de la liste par le serveur FTP. Il serait très compliqué d'écrire du code pour avoir à anticiper toutes les différentes manières dont les serveurs FTP pourraient formater cette liste.
Existe-t-il un moyen portable d'obtenir un tableau rempli avec la liste de répertoires?
(le tableau ne devrait avoir les noms de dossier.)
Oh, joliment repéré sur le 550! Upvoted. :) –
oui, cela répond à la question, et je pense que c'est génial mais ce n'est pas une réponse extensible. Et si j'ai besoin d'un objet fichier avec des propriétés? ne pas être pessimiste, mais ce serait pratique. –
Merci pour votre aide. 5 ans plus tard: obsolète depuis la version 3.3: utilisez plutôt mlsd(). –