Ich habe folgenden Code:Python shutil, vollständige Datei wird nicht ins Archiv geschrieben. Versuchte zipfile auch
import os
import sys
import shutil
import binascii
import zipfile
code = "testing111"
head1 = ("\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01")
head2 = ("\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01")
head3 = ("\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01")
evilbuff = bytearray(head1)
evilbuff += code
evilbuff += bytearray(head2)
evilbuff += code
evilbuff += bytearray(head3)
file = "folder\\file\\demo\\images.png"
f = open(file,mode='wb')
f.write(evilbuff)
file2 = sys.argv[2]
shutil.make_archive("myzip", "zip", "demo_03")
print ("[+] Done")
Ich versuche, eine Datei in folder_03\file\demo\
zu schreiben und zip dann den Inhalt des Ordners folder_03
. Alles funktioniert gut.
Es gibt nur ein Problem. Die Datei images.jpg
wird am Ende abgezogen.
Es wird wie erwartet in folder\file\demo\images.jpg
geschrieben, aber im Zip-Archiv ist die Datei nicht abgeschlossen. Etwa 300 Bytes werden vom Ende entfernt. Ist es ein Fehler im Dienstprogramm python zip? Ich habe auch mit zipfile versucht, hatte aber das gleiche Problem.
Die Bytes in head1, head2, head3
hier sind nur Beispiele.
Wird die Datei nicht gerade komprimiert, wenn sie in ein Archiv gestellt wird? –
Ja ist es komprimiert. Aber wenn ich dieses Archiv entziehe und diese Bilddatei erneut überprüfe. Einige Bytes von letzten fehlen. Die Datei in der Demo-Datei wird jedoch korrekt geschrieben. – user1111111111111