как поставить пароль на архив через shutil.make_archive

как мне поставить пароль на архив, который cоздаётся через shutil.make_archive

вот на это мне нужно поставить пароль

def zipping():    
    d = randint(1, 88005353535) # название файла

    chars = 'abcdefghyjklmnopqrstuvwxyz'
    chars += chars.upper()
    nums = str(1234567890)
    chars += nums
    special_chars = '$'
    chars += special_chars
    length = 50
    password = "".join(random.sample(chars, length)) # вот переменая где генерируется пароль

    shutil.make_archive(str(d),'zip', root_dir=str(ZipPATH["RootFolder"]))

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

Автор решения: Clark Devlin

Обманул вас, в zipfile такой функции нет, зато есть в библиотеке pyminizip. Для установки: pip3 install pyminizip

На сколько я знаю именно папку добавить нельзя, но можно несколько файлов

import pyminizip

compression_level = 5 # значение от 1 до 9, означает степень сжатия
pyminizip.compress("src.txt", "dst.zip", "password", compression_level) # для одного файла

pyminizip.compress_multiple([u'pyminizip.so', 'file2.txt'], [u'/path_for_file1', u'/path_for_file2'], "file.zip", "1233", compression_level) # для нескольких файлов
→ Ссылка