# main.py import argparse from core.scanner import find_comic_files from processors.validator import validate_comic from processors.cleaner import clean_comic from processors.converter import convert_comic from processors.standardizer import standardize_comic def parse_args(): parser = argparse.ArgumentParser(description="Gestor de cómics CBR/CBZ") parser.add_argument("--ruta", required=True) parser.add_argument("--listar", action="store_true") parser.add_argument("--validar", action="store_true") parser.add_argument("--limpiar", action="store_true") parser.add_argument("--convertir", action="store_true") parser.add_argument("--estandarizar", action="store_true") parser.add_argument("--formato", choices=["cbz", "cbr"], default="cbz") return parser.parse_args() def main(): args = parse_args() comic_files = find_comic_files(args.ruta) if args.listar: for f in comic_files: print(f) if args.validar: for f in comic_files: print(f"Validando: {f}") print(validate_comic(f)) print() if args.limpiar: for f in comic_files: print(f"Limpieza: {f}") print(clean_comic(f)) print() if args.convertir: for f in comic_files: print(f"Convirtiendo: {f}") info = convert_comic(f, args.formato) if info["needs_conversion"]: print(f" → Convertido a {args.formato.upper()}: {info['target_path']}") else: print(f" → Sin cambios (ya era {args.formato.upper()})") print() if args.estandarizar: for f in comic_files: print(f"Estandarizando: {f}") print(standardize_comic(f, args.formato)) print() if __name__ == "__main__": main()