Python os.system: извлечение архивов с паролями

Рейтинг: 1Ответов: 0Опубликовано: 17.06.2023

Есть строка, которая извлекает файлы из архивов:

os.system(rf'D:\Programs\7-Zip\7z.exe x {путь к файлу} -o{папка куда извлекаем} -p{пароль}')

Так вот, "пароль" берется из словаря с помощью for и подставляется сюда.

Также все это завернуто в try на случай, если пароль не подойдёт, то повторить уже с другим паролем, а если пароль подойдёт, то break.

Но вот try, видимо, не ловит ошибки из os.system и перебирает дальше пароли, если даже он подошёл. И, получается, что когда пароль подходит, файлы извлекаются из архива, он дальше пробует другой пароль, и он, естественно, не подходит, но все равно извлекает уже файлы с 0 байтом (размером) и просит меня перезаписать те файлы.

Приходит сообщение вида "нажмите Y, если хотите перезаписать файл". Ну, и другие там N, Q и т.д. Как это исправить?

Ответы

Ответов пока нет.