From a2e274f79844445ae8bc3e6e634c50ab788765e3 Mon Sep 17 00:00:00 2001 From: Jakob Moser Date: Thu, 22 May 2025 10:47:07 +0200 Subject: [PATCH] Add argparse --- karaokatalog/deduplicate/__main__.py | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/karaokatalog/deduplicate/__main__.py b/karaokatalog/deduplicate/__main__.py index 3a98cdd..de7cd79 100644 --- a/karaokatalog/deduplicate/__main__.py +++ b/karaokatalog/deduplicate/__main__.py @@ -1,5 +1,5 @@ +import argparse import logging -import sys from pathlib import Path from tqdm import tqdm @@ -14,11 +14,28 @@ logging.basicConfig( format="%(asctime)s [%(levelname)s] %(message)s", level=logging.INFO ) + +def parse_args() -> argparse.Namespace: + parser = argparse.ArgumentParser( + prog="python3 -m karaokatalog.deduplicate", + description="Deduplicate UltraStar Deluxe song libraries", + ) + + parser.add_argument( + "library_path", + type=Path, + help="The directory which contains the songs, the one you'd also configure UltraStar Deluxe to use", + ) + + return parser.parse_args() + + if __name__ == "__main__": + args = parse_args() logging.info("Karaokatalog Deduplication started") logging.info("Loading library") - library = Library.from_dir(Path(sys.argv[1])) + library = Library.from_dir(args.library_path) logging.info("Library loaded") logging.info("Finding duplicates (songs with identical title and artist)")