Я пытаюсь извлечь все файлы из .zip, содержащие подпапки в одну папку.Я хочу, чтобы все файлы из подпапок распаковывались только в одну папку без сохранения исходной структуры.На данный момент я извлекаю все, перемещаю файлы в папку, затем удаляю предыдущие подпапки.Файлы с одинаковыми именами перезаписываются.
Возможно ли это сделать перед записью файлов?
Вот структура, например:
my_zip/file1.txt
my_zip/dir1/file2.txt
my_zip/dir1/dir2/file3.txt
my_zip/dir3/file4.txt
В конце яВот почему:
my_dir/file1.txt
my_dir/file2.txt
my_dir/file3.txt
my_dir/file4.txt
Что я могу добавить к этому коду?
import zipfile
my_dir = "D:\\Download\\"
my_zip = "D:\\Download\\my_file.zip"
zip_file = zipfile.ZipFile(my_zip, 'r')
for files in zip_file.namelist():
zip_file.extract(files, my_dir)
zip_file.close()
если я переименую путь к файлу из zip_file.namelist (), у меня будет эта ошибка:
KeyError: "There is no item named 'file2.txt' in the archive"