В настоящее время я настраиваю функцию для архивирования всех файлов в каталоге (EXE_FOLDER) и экспорта в папку VERSION_ARCHIVE. Для этого я использую следующую функцию:
def zip_and_archive(version):
zip_filename = f"software-{version}"
shutil.make_archive(VERSION_ARCHIVE / zip_filename, 'zip', EXE_FOLDER)
Проблема в том, что у меня возникают проблемы, так как при архивировании я непосредственно архивирую все файлы, содержащиеся в папке EXE_FOLDER. Я хотел бы экспортировать все файлы в EXE_FOLDER в другую папку с тем же именем, что и ZIP-файл. Таким образом, когда файлы разархивированы, все они находятся в одной папке. Если это звучит странно, это может прояснить:
Если я заархивирую функцию, как указано, я получу следующую структуру:
./ZIP_filename.zip
└── x.dll
└── y.dll
└── z.dll
└── [...]
└── software.exe
Я бы хотел что-то подобное при разархивировании:
./ZIP_filename.zip
└── ZIP_filename
└── x.dll
└── y.dll
└── z.dll
└── [...]
└── software.exe
Затем, когда я выполняю
, я знаю, что есть несколько вопросов, связанных конкретно с shutil.make_archive, однако я не смог найти прямого решения для этой проблемы. Надеюсь, что мне удалось быть точным и лаконичным, несмотря на длину текста.