From 6bea0ee52433eabdeeda9d0079140be4656d0c62 Mon Sep 17 00:00:00 2001 From: DasMoorhuhn Date: Tue, 12 Dec 2023 21:56:30 +0100 Subject: [PATCH] seperated main --- requirements.txt | 1 + src/config.py | 15 +++++++++++++++ src/config.yml | 2 ++ src/main.py | 24 ++---------------------- src/process.py | 19 +++++++++++++++++++ 5 files changed, 39 insertions(+), 22 deletions(-) create mode 100644 src/config.py create mode 100644 src/config.yml create mode 100644 src/process.py diff --git a/requirements.txt b/requirements.txt index 899e52b..270912e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,5 @@ pillow +pyyaml python-magic progressbar virtualenv diff --git a/src/config.py b/src/config.py new file mode 100644 index 0000000..1f8133e --- /dev/null +++ b/src/config.py @@ -0,0 +1,15 @@ +import yaml + +config_file = "src/config.yml" + + +def get_config(): + with open(file=config_file, mode='r') as file: + print(yaml.safe_load(file)) + return Config(yaml.safe_load(file)) + + +class Config: + def __init__(self, data): + self.src = data['src'] + self.dst = data['dst'] diff --git a/src/config.yml b/src/config.yml new file mode 100644 index 0000000..a0bfb57 --- /dev/null +++ b/src/config.yml @@ -0,0 +1,2 @@ +src: "../app/Temp" +dst: "../app/Bilder" \ No newline at end of file diff --git a/src/main.py b/src/main.py index e40638f..275edbf 100644 --- a/src/main.py +++ b/src/main.py @@ -1,14 +1,9 @@ import sys import logging - -from meta_data_handler import get_meta_data -from file_handler import sort_pictures -from scan_folder import * +from process import start_process sys.path.append("../") log_folder = "." -src = "../app/TempPic" -dst = "../app/Bilder" logger = logging.getLogger('AutoPicture') logger.setLevel(logging.DEBUG) @@ -16,19 +11,4 @@ handler = logging.FileHandler(filename=f'{log_folder}/AutoPicture.log', encoding handler.setFormatter(logging.Formatter('%(asctime)s|:%(message)s')) logger.addHandler(handler) - -def start_process(): - try: - exif_data = get_meta_data(images=files) - sort_pictures(images=exif_data, dst=dst, logger=logger) - except Exception as err: - print(err) - logger.error(err) - raise err - - -files = recursive_scan_folder(src) -if len(files) > 0: - start_process() -else: - print("No images found") +start_process(logger=logger) diff --git a/src/process.py b/src/process.py new file mode 100644 index 0000000..e45e28b --- /dev/null +++ b/src/process.py @@ -0,0 +1,19 @@ +from meta_data_handler import get_meta_data +from file_handler import sort_pictures +from scan_folder import recursive_scan_folder +from config import get_config + + +def start_process(logger): + config = get_config() + try: + files = recursive_scan_folder(config.src) + if len(files) > 0: + exif_data = get_meta_data(images=files) + sort_pictures(images=exif_data, dst=config.dst, logger=logger) + else: + print("No images found") + except Exception as err: + print(err) + logger.error(err) + raise err