2017-07-14 1 views
-2

Also ich versuche, ein Verzeichnis mit Python zu verschlüsseln, und ich bin mir nicht sicher, was der beste Weg, das zu tun ist. Ich bin leicht in der Lage, den Ordner in eine ZIP-Datei umzuwandeln, aber von dort habe ich versucht, nachzuschlagen, wie man es mit AES verschlüsselt, aber konnte das nicht zum Funktionieren bringen und ich habe auch versucht, 7zip zu verwenden, um den Ordner zu archivieren, aber Das könnte auch nicht funktionieren, wenn jemand eine andere Lösung hat, um ein Verzeichnis zu verschlüsseln, oder könnte mir in die richtige Richtung zeigen, wie man eine der vorherigen Methoden benutzt, die hilfreich wären. (Ich bin auf Windows, wenn das eine Bedeutung hat)Verschlüsseln Sie Ordner oder Zip-Datei mit Python

+0

Mögliches Duplikat von [Verschlüsseln und Entschlüsseln mit PyCrypto AES 256] (https://stackoverflow.com/questions/12524994/encrypt-decrypt-using-pycrypto-aes-256) – Jedi

+0

[Welche Themen kann ich hier fragen?] (https://stackoverflow.com/help/on-topic). –

Antwort

0

Ich empfehle immer noch 7-zip.

sagen wir, Sie die Zip-Ordner als myzip.zip

Import subprocess 

zp = subprocess.call(['7z', 'a', 'your password', '-y', 'myzip.zip'] + ['your file']) 

Eine alternative Art und Weise nennen wollen:

Import pyminzip 
level=4 #level of compression 
pyminizip.compress("your file", "myzip.zip", "your password", level) 
+1

Bitte beantworten Sie Fragen, die nicht zum Thema gehören. –

0

Mit 7-Zip durch den Subprozess Modul funktioniert. Hier sind einige Fragen, die ich gestoßen und hatte zu beheben: Sie müssen den Pfad angeben, getrennt 7zip aus der cmd-Variable in der Popen subprocess und bauen Sie den Befehl mit Variablen anstatt eine solide Saite:

appPath="C:\Program Files\\7-Zip" 
zApp="7z.exe" 
zAction='a' 
zPass='-pPASSWORD' 
zAnswer='-y' 
zDir=directoryToZip 
progDir=os.path.join(appPath,zApp) 

cmd = [zApp, zAction, zipFileName, zPass, zAnswer, zDir] 
subprocess.Popen(cmd, executable=progDir, stderr=subprocess.STDOUT, stdout=subprocess.PIPE) 

That erstellt eine ZIP-Datei (an der Position mit dem Namen in der Variablen zipFileName) einschließlich des Inhalts (Verzeichnisse und Dateien) innerhalb des Pfads "directoryToZip"

progDir muss separat von der Anwendung angegeben werden, die Sie aufrufen Teil des Open-Befehls (dies ist der ausführbare Pfad), und die Befehlszeichenfolge musste als Variablen aufgebaut werden, um mit der Windows-Backslash-Escaping-Einrichtung umzugehen.

+0

Das beantwortet die Frage nicht wirklich. Wenn Sie eine andere Frage haben, können Sie sie durch Klicken auf [Frage stellen] (https://stackoverflow.com/questions/ask) stellen. Sie können auch [Kopfgeld hinzufügen] (https://stackoverflow.com/help/privileges/set-bounties) hinzufügen, um mehr Aufmerksamkeit auf diese Frage zu lenken, sobald Sie genug [Reputation] haben (https://stackoverflow.com/help/ Whats-Reputation). - [Aus Bewertung] (/ review/low-quality-posts/17786884) – desertnaut

+0

Ich habe dies mit einer Antwort aktualisiert. Hoffe, das ist jetzt akzeptabel –

Verwandte Themen