Files
comic-manager/main.py
T
2026-02-19 08:36:06 +01:00

53 lines
1.4 KiB
Python

# main.py
import argparse
from core.scanner import find_comic_files
from core.pipeline import Pipeline
from processors.validator import validate_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:
res = validate_comic(f)
print(f"{f}{res.summary()}")
print()
steps = []
if args.limpiar or args.estandarizar:
steps.append("clean")
if args.convertir or args.estandarizar:
steps.append("convert")
if steps:
pipeline = Pipeline(steps=steps, desired_format=args.formato)
for f in comic_files:
result = pipeline.run(f)
print(result.summary())
if __name__ == "__main__":
main()