Неожиданный файл, использующий shutil.make_archive для сжатия файла - PullRequest
0 голосов
/ 03 мая 2018

Я пытаюсь использовать shutil.make_archive для архивирования файлов.

Когда я использую:

import shutil
shutil.make_archive('zip_file', 'zip', 'C:\\Users\\test')

Я получил zip_file в zip_file, а zip_file в zip_file кажется поврежденным файлом. Кто-нибудь знает, как с этим бороться?

Однако, когда я использую:

make_archive(
  'zipfile_name', 
  'zip',           # the archive format - or tar, bztar, gztar 
  root_dir=file_dir,   # root for archive - current working dir if None
  base_dir=file_dir)   # start archiving from here - cwd if None too

Он получает все правильно, кроме неправильной директории папки. Например, если file_dir = 'C: \ Users \ aaa \ Desktop \ test \ bbb' Структура почтового файла будет:

 Users  
         aaa
              Desktop
                     test
                         bbb

И я бы хотел, чтобы это было только bbb /.

Есть мысли? Я очень ценю вашу помощь.

1 Ответ

0 голосов
/ 03 мая 2018

Я думаю, что решение состоит в том, чтобы создать zip-файл в другом каталоге. Оттуда что-то вроде

shutil.make_archive('zip_file', 'zip', 'C:\\Users\\test', "bbb")

должен предоставить вам архив каталога bbb.

...