From dd01ddb5cf5072232859753c216a7ab1bffeaa2c Mon Sep 17 00:00:00 2001 From: Fabio Scotto di Santolo Date: Fri, 25 Oct 2024 10:19:51 +0200 Subject: [PATCH] Added logging e outputs --- files/util.py | 4 ++++ main.py | 3 +++ service/provider.py | 5 +++++ 3 files changed, 12 insertions(+) diff --git a/files/util.py b/files/util.py index 64c0da9..67c0648 100644 --- a/files/util.py +++ b/files/util.py @@ -1,8 +1,11 @@ +import logging import os from typing import Any import magic +logger = logging.getLogger(__name__) + def scan_folder(src: str): for (root, dirs, files) in os.walk(top=src): @@ -12,4 +15,5 @@ def scan_folder(src: str): def accepted_file_type(file: Any) -> bool: mime = magic.from_file(file, mime=True) + logger.info(f"MIME {mime} for file {file}") return mime in ('audio/mpeg', 'audio/mp3') diff --git a/main.py b/main.py index baa9d6c..ffb8eea 100644 --- a/main.py +++ b/main.py @@ -22,6 +22,7 @@ def arg_parser(): async def main(src, dst) -> Any: for song_file in scan_folder(src): if accepted_file_type(song_file): + print(f"Found file {song_file}") track_info = await search_song(song_file) logging.info(f"Recognize file {song_file} as {track_info}") album_path: str = os.path.join(dst, track_info.artist, @@ -32,6 +33,8 @@ async def main(src, dst) -> Any: # I can copy to file now shutil.copy(song_file, os.path.join(album_path, f"{track_info.track_number} - {track_info.title}.mp3")) + else: + print(f"Skipped file {song_file}") if __name__ == '__main__': diff --git a/service/provider.py b/service/provider.py index fb6c41d..2a557ac 100644 --- a/service/provider.py +++ b/service/provider.py @@ -1,9 +1,13 @@ import itertools +import json +import logging from typing import Any from api import shazam from models.track import TrackInfo, Album +logger = logging.getLogger(__name__) + async def __extract_data(data: dict[str, Any]) -> dict[str, Any]: def album_field(x: str, lst: list) -> str | int: @@ -18,6 +22,7 @@ async def __extract_data(data: dict[str, Any]) -> dict[str, Any]: return t["attributes"] return {} + logger.debug(json.dumps(data, indent=2)) track_data = data["track"] track_attrs = list(itertools.chain(*[x["metadata"] for x in track_data["sections"] if "metadata" in x])) album_attrs = seek_track(