Igazolófüzetek feldolgozása

Innen: heyjoe wiki
A lap korábbi változatát látod, amilyen Heyjoe (vitalap | szerkesztései) 2023. február 3., 11:08-kor történt szerkesztése után volt.
Ugrás a navigációhoz Ugrás a kereséshez

A bescannelt igazolófüzetek feldolgozásakor sokszor kell ugyanazokat a feladatokat elvégezni, például átméretezés, konvertálás, átlátszóság beállítása, stb. Ezek a feladatok nagyon jól automatizálhatóak, így sok időt lehet megsórolni. A kép manipulációkhoz Python-ra, és annak egy kiegészítőjére, a Pillow-ra lesz szükségünk.

Telepítés

Töltsük le, és telepítsük az operációs rendszerünknek megfelelő Python verziót. A windowsos változatokat itt találjuk: Python. Ha megvan, akkor telepítsük a Pillow csomagot. Ehhez indítsd el a parancssort a gépeden, és írd be a következőt:

 python3 -m pip install --upgrade pip
 python3 -m pip install --upgrade Pillow

Python scriptek futtatása

A scriptjeink sima szövegfájlok lesznek, bármelyik egyszerű szövegszerkesztővel szerkeszthetők (Notepad, Notepad++ igen, ms word nem), vagy használható IDE is hozzá. Fontos tudni, hogy Python esetében az indentálás, azaz a sorok behúzása dönti el, hogy a sor melyik kódblokkhoz tartozik, nem a kapcsos zárójelet használják, mint sok más programnyelv esetén. Scriptjeinket futtatni parancssorból tudjuk

 python3 ez_a_scriptem.py

paranccsal. Rövid összefoglalót itt találsz: [1]

A scriptek felépítése

Minden programunk hasonlóan fog felépülni: betöltjük a szükséges modulokat, meghatározzuk, hogy mit kell csinálni egy-egy képpel, majd végigjárjuk a könyvtárat, és feldolgozzuk a képeket. Példa:

 import os
 
 directory = '.'
 
 for filename in os.listdir(directory):
     if filename.endswith(".jpg"):
         print(os.path.join(directory, filename))
         continue
     else:
         continue

Magyarázat:

 import os

Betöltjük az os nevezetű modult. Ez egy interfészt biztosít az operációs rendszer funkcióihoz, mi a könyvtárban lévő fájlok meghatározására használjuk majd.

 directory = '.'

Meghatározzuk a munkakönyvtárunkat, ami megegyezik azzal a könyvtárral, ahol a script fut.

 for filename in os.listdir(directory):
     if filename.endswith(".jpg"):
         print(os.path.join(directory, filename))
         continue
     else:
         continue

Kilistázzuk az adott könyvtár állományait, és egy ciklusban egyesével végigmegyünk rajta. Az éppen aktuállis állomány nevét a filename változóban tároljuk. Következő sorban megvizsgáljuk a filename változót, és ha jpg-re végződik akkor kiíratjuk az elérési útvonalát.

Ez a ciklus lesz az alapja az összes scriptünknek.