Я использую эту функцию для извлечения файлов из архива .zip и сохранения его на сервере:
def unzip_file_into_dir(file, dir):
import sys, zipfile, os, os.path
os.makedirs(dir, 0777)
zfobj = zipfile.ZipFile(file)
for name in zfobj.namelist():
if name.endswith('/'):
os.mkdir(os.path.join(dir, name))
else:
outfile = open(os.path.join(dir, name), 'wb')
outfile.write(zfobj.read(name))
outfile.close()
И использование:
unzip_file_into_dir('/var/zips/somearchive.zip', '/var/www/extracted_zip')
somearchive.zip имеют такую структуру:
somearchive.zip
1.jpeg
2.jpeg
another.jpeg
или, иногда, вот этот:
somearchive.zip
somedir/
1.jpeg
2.jpeg
another.jpeg
Вопрос: как мне изменить мою функцию, чтобы мой каталог extracted_zip
всегда содержал только изображения, а не изображения в другом подкаталоге, даже если изображения хранятся в somedir
внутри архива.