#!/usr/bin/env python3 """ dump_values.py - Zeigt (mit pypdf) den WERTE-BLOCK der Info- und CA-Seite. Aus der Analyse: pypdf gibt zuerst das leere Template (Labels) aus, dann einen Block mit den eingegebenen Werten. Dieses Script isoliert genau diesen Werte-Block, damit wir die Feld-Zuordnung bauen koennen. Aufruf: python3 dump_values.py --pdf ~/data/S/"Sturgill, Garett 040126.pdf" """ import argparse from pypdf import PdfReader ANCHOR_INFO = "BUYER INFORMATION SHEET" ANCHOR_CA = "PROSPECTIVE BUYER AGREES TO KEEP AND HOLD CONFIDENTIAL" ap = argparse.ArgumentParser() ap.add_argument("--pdf", required=True) args = ap.parse_args() reader = PdfReader(args.pdf) for i, page in enumerate(reader.pages): txt = page.extract_text() or "" flat = txt.replace("\n", " ") is_info = ANCHOR_INFO in txt is_ca = ANCHOR_CA in flat if not (is_info or is_ca): continue tag = "INFO" if is_info else "CA" print(f"\n{'='*70}") print(f"=== SEITE {i+1} [{tag}] ===") print('='*70) lines = txt.splitlines() for ln, line in enumerate(lines, 1): print(f"{ln:3} | {line!r}")