Ok, so geht es schoneinmal:
Code: Alles auswählen
from threading import Thread
*listebauen*
def bilderskalieren(datei):
name = os.path.basename(datei)
ausgabe = os.path.join(ziel, name)
im = Image.open(datei)
im.thumbnail(abmessungen, Image.ANTIALIAS)
im.save(ausgabe + '.py.jpg', 'JPEG')
for datei in liste:
prozess = Thread(target = bilderskalieren, args = (datei,))
prozess.start()
Es funktioniert auch, ich bekomme aber ca. 10 Fehlermeldungen:
Code: Alles auswählen
Exception in thread Thread-15:
Traceback (most recent call last):
File "/usr/lib64/python2.6/threading.py", line 522, in __bootstrap_inner
self.run()
File "/usr/lib64/python2.6/threading.py", line 477, in run
self.__target(*self.__args, **self.__kwargs)
File "z.py", line 60, in bilderskalieren
im = Image.open(datei)
File "/usr/lib64/python2.6/site-packages/PIL/Image.py", line 1916, in open
raise IOError("cannot identify image file")
IOError: cannot identify image file
Aber am Ende werden alle 150 Bilder korrekt generiert. Kann ich die Fehlermeldung ignorieren?
Edit:
OK, die Fehlermeldung resultiert aus der Liste.