Files
comic-manager/main.py
T

75 lines
1.8 KiB
Python

# main.py
import argparse
from core.scanner import find_comic_files
from processors.validator import validate_comic
def parse_args():
parser = argparse.ArgumentParser(
description="Gestor de colección de cómics CBR/CBZ"
)
parser.add_argument(
"--ruta",
type=str,
required=True,
help="Ruta base donde buscar los cómics"
)
parser.add_argument(
"--listar",
action="store_true",
help="Listar todos los archivos CBR/CBZ encontrados"
)
parser.add_argument(
"--validar",
action="store_true",
help="Validar los archivos encontrados"
)
# Aquí podremos añadir más opciones en el futuro:
# parser.add_argument("--convertir", action="store_true", help="Convertir CBR a CBZ")
# parser.add_argument("--organizar", action="store_true", help="Organizar la colección")
return parser.parse_args()
def main():
args = parse_args()
print(f"Buscando archivos CBR/CBZ en: {args.ruta}\n")
comic_files = find_comic_files(args.ruta)
if not comic_files:
print("No se encontraron archivos .cbr o .cbz")
return
if args.listar:
print("Archivos encontrados:")
for f in comic_files:
print(f" - {f}")
print()
if args.validar:
print("Validando archivos...\n")
for f in comic_files:
result = validate_comic(f)
print(result)
if result.errors:
print(" Errores:")
for e in result.errors:
print(f" - {e}")
if result.warnings:
print(" Avisos:")
for w in result.warnings:
print(f" - {w}")
print()
if __name__ == "__main__":
main()