Linux Magazine #1 2022: Multiprocessing in Python Listing
- February 16, 2022
- 0
Listing:
import os, sys, time
from PIL import Image
def verklein(invoer):
    map, bestand = os.path.split(invoer)
    uitvoer = 'output/' + bestand
   
    try:
        with Image.open(invoer) as afbeelding_in:
            if afbeelding_in.width > afbeelding_in.height:
                afmetingen = (1920, 1285)
                bijsnijden = (0, 105, 1920, 1185)
            else:
                afmetingen = (1285, 1920)
                bijsnijden = (105, 0, 1185, 1920)
           
            afbeelding_verkleind = afbeelding_in.resize(afmetingen)
            afbeelding_bijgesneden = afbeelding_verkleind.crop(bijsnijden)
            afbeelding_bijgesneden.save(uitvoer, exif=afbeelding_in.info.get('exif'), quality='web_high')
    except OSError:
        print('Fout bij het verwerken van bestand', invoer)
bestanden = sys.argv[1:]
aantal_bestanden = len(bestanden)
start = time.time()
for bestand in bestanden:
    resize(bestand)
einde = time.time()
tijd = einde - start
snelheid = aantal_bestanden / tijd
print(f'{aantal_bestanden} bestanden verwerkt in {tijd:.1f} seconden ({snelheid:.1f} bestanden per seconde)')




