Bonjour
En me servant du code disponible sur la FAQ pour cette tache et en le modifiant legerement afin de ne pas reproduire l arborescence, mais de tout telecharger dans un seul dossier, je parviens a telecharger les fichiers ...
seulement il manque a chaque fois la premiere lettre dans le nom des fichiers ...
Si vous avez une idée du probleme voila le code source :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 import ftplib import os ftp=ftplib.FTP('ftp.rcsb.org') ftp.login() ftp.cwd('pub/pdb/data/structures/divided/mmCIF') def download(pathsrc, pathdst): lenpathsrc = len(pathsrc) def _download(pathsrc): l = ftp.nlst(pathsrc) for i in l: try: ftp.size(i) print i ftp.retrbinary('RETR '+i, open(pathdst+os.sep+i[lenpathsrc:], 'wb').write) except: ftp.cwd(i+'/') _download('.') ftp.cwd('..') _download(pathsrc) download('.', '.')
Partager