gfdfg
This commit is contained in:
36
python/dump_values.py
Normal file
36
python/dump_values.py
Normal file
@@ -0,0 +1,36 @@
|
||||
#!/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}")
|
||||
Reference in New Issue
Block a user