"""查看PDF中提取的原始文本和OCR内容"""
import sys, os, re
sys.path.insert(0, os.path.expanduser("~/gov_crawler/venv/lib/python3.9/site-packages"))

import pymupdf
from rapidocr_onnxruntime import RapidOCR

pdf_path = sys.argv[1]

# 1. 查看直接提取的文字
print("=" * 60)
print("[直接提取的文字]")
print("=" * 60)
doc = pymupdf.open(pdf_path)
for i, page in enumerate(doc):
    text = page.get_text()
    print(f"\n--- 第{i+1}页 ({len(text)}字) ---")
    print(text[:2000])
doc.close()

# 2. OCR
print("\n" + "=" * 60)
print("[RapidOCR 识别结果]")
print("=" * 60)
doc = pymupdf.open(pdf_path)
ocr = RapidOCR()
for i, page in enumerate(doc):
    pix = page.get_pixmap(dpi=200)
    img_data = pix.tobytes("png")
    temp_path = f"/tmp/ocr_page_{i}.png"
    with open(temp_path, "wb") as f:
        f.write(img_data)
    result, elapse = ocr(temp_path)
    os.remove(temp_path)
    print(f"\n--- 第{i+1}页 ---")
    if result:
        for _, text, score in result:
            print(f"  [{score:.3f}] {text}")
    else:
        print("  (无识别结果)")
doc.close()
