Как заархивировать папку в tempfile? | python

Есть папка, которая может весить достаточно много, для отправки по http ее надо заархивировать в tempfile

import tempfile

temp_arc = compress_dir("/some_dir")

...отправка...

temp_arc.close()

Вот как compress_dir сделать?


Ответы (1 шт):

Автор решения: dresqd

Воспользуйтесь библиотекой shutil и ее методом

make_archive(archive_name, 'zip', root_dir) 

функция также возвращает путь к созданному архиву, ну и реализация будет примерно такой:

import tempfile 
from shutil import make_archive

temp_arc = make_archive('/myarchive', 'zip', '/somedir') 
… отправка …
→ Ссылка