Я использую текущий код для извлечения файлов из zip-файла, сохраняя структуру каталогов:
zip_file = zipfile.ZipFile('archive.zip', 'r')
zip_file.extractall('/dir/to/extract/files/')
zip_file.close()
Вот структура для примера zip-файла:
/dir1/file.jpg
/dir1/file1.jpg
/dir1/file2.jpg
В конце я хочу это:
/dir/to/extract/file.jpg
/dir/to/extract/file1.jpg
/dir/to/extract/file2.jpg
Но он должен игнорировать только в том случае, если zip-файл имеет папку верхнего уровня со всеми файлами внутри него, поэтому, когда я извлекаю zip с такой структурой:
/dir1/file.jpg
/dir1/file1.jpg
/dir1/file2.jpg
/dir2/file.txt
/file.mp3
Так и должно быть:
/dir/to/extract/dir1/file.jpg
/dir/to/extract/dir1/file1.jpg
/dir/to/extract/dir1/file2.jpg
/dir/to/extract/dir2/file.txt
/dir/to/extract/file.mp3
Есть идеи?