Hallo,
Mein Plan ist es bei jedem Mausklick einen ImageGrab zu machen und diesen direkt in ein Zipfile als JPG abzulegen.
Ich bin soweit gekommen das es halbwegs funktioniert.
bekomme ein JPG im zip aber leider auch im work direktory.
Wie kann ich verhinder das die JPG files im work abgesaved werden?
hier meine zeilen: :K
a=win32api.GetAsyncKeyState(win32con.VK_LBUTTON)
if a==-32768:
img = ImageGrab.grab()
saveas=os.path.join(Compname+'_'+Username+'_'+strftime("%Y%m%d%H%M%S")+'.jpg')
zfile.write(saveas, img.save(saveas), zipfile.ZIP_DEFLATED)
#print saveas
time.sleep(0)
PIL ImageGrab direkt in ZipFile speichern ?
@pingdrei: Der Aufruf ist falsch, weil als zweites Argument der Name der Datei innerhalb des ZIP-Archivs gefragt ist. Das funktioniert nur zufällig so, weil `Image.save()` den Rückgabewert `None` hat.
Wenn man sich die temporäre Datei sparen möchte, sollte man das Bild in eine Zeichenkette mit den kodierten Bytes umwandeln und diese dann mit der `writestr()`-Methode in das Archiv schreiben.
Wenn man sich die temporäre Datei sparen möchte, sollte man das Bild in eine Zeichenkette mit den kodierten Bytes umwandeln und diese dann mit der `writestr()`-Methode in das Archiv schreiben.
Danke für die Unterstützung!
Ich habe es mal soweit umgebaut das ich zuerst speichere und dann ins zip schreibe und das temp file lösche.
ich werde mich mal mit `writestr()` beschäftigen um die daten direkt ins zip zu bringen.
bis bald!
pingdrei
Ich habe es mal soweit umgebaut das ich zuerst speichere und dann ins zip schreibe und das temp file lösche.
ich werde mich mal mit `writestr()` beschäftigen um die daten direkt ins zip zu bringen.
bis bald!
pingdrei