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 27 28 29 30
| def RecursiveDownload(self, baseDir):
self.cwd(baseDir)
data = [item for item in self.nlst() if item != "." and item != ".."]
dirs = []
files = []
for i in data:
try:
self.cwd(i)
self.cwd("..")
dirs.append(i)
except:
files.append(i)
for file in files:
with open(file, "wb") as fileObject:
self.retrbinary("RETR " + file, fileObject.write)
print(os.getcwd() + file + "--> 100%")
for directory in dirs:
try:
os.chdir(directory)
except:
os.mkdir(directory)
os.chdir(directory)
self.RecursiveDownload(directory)
self.cwd("..")
os.chdir("..") |
Partager