Python-FTP загрузить все файлы в каталог

Я собираю сценарий для загрузки всех файлов из каталога через FTP . Пока мне удалось подключиться и получить один файл, но я не могу заставить работать в пакетном режиме (получить все файлы из каталога) Вот что у меня есть на данный момент:

from ftplib import FTP
import os, sys, os.path

def handleDownload(block):
    file.write(block)
    print ".",

ddir='C:\\Data\\test\\'
os.chdir(ddir)
ftp = FTP('test1/server/')

print 'Logging in.'
ftp.login('user1\\anon', 'pswrd20')
directory = '\\data\\test\\'

print 'Changing to ' + directory
ftp.cwd(directory)
ftp.retrlines('LIST')

print 'Accessing files'

for subdir, dirs, files in os.walk(directory):
    for file in files: 
        full_fname = os.path.join(root, fname);  
        print 'Opening local file ' 
        ftp.retrbinary('RETR C:\\Data\\test\\' + fname,
                       handleDownload,
                       open(full_fname, 'wb'));
        print 'Closing file ' + filename
        file.close();
ftp.close()

Бьюсь об заклад, вы можете сказать, что это не так много, когда я запускаю его, поэтому любые предложения по улучшению были бы очень признательны.

26
задан Mark Amery 19 June 2019 в 11:57
поделиться