frknuzn/ocr-poc
0
1import argparse2import json3import sys4 5from .utils import read_text_with_paddle6from .extract import extract_fields7 8 9def main(argv=None):10 p = argparse.ArgumentParser(description="Receipt OCR to JSON (PaddleOCR)")11 p.add_argument("--image", required=True, help="Girdi görsel yolu")12 p.add_argument("--out", default="out.json", help="Çıktı JSON dosyası")13 args = p.parse_args(argv)14 15 try:16 lines = read_text_with_paddle(args.image)17 data = extract_fields(lines)18 except Exception as e:19 print(f"Hata: {e}", file=sys.stderr)20 sys.exit(1)21 22 try:23 with open(args.out, "w", encoding="utf-8") as f:24 json.dump(data, f, ensure_ascii=False, indent=2)25 except Exception as e:26 print(f"Çıktı yazma hatası: {e}", file=sys.stderr)27 sys.exit(1)28 29 print(json.dumps(data, ensure_ascii=False, indent=2))30 31 32if __name__ == "__main__":33 main()34 35 