文件靈析

👤 巖罕哈 ✓ 已認證 📦 v1.0.0 ⭐ 4.6 ⬇️ 99 下載
📄 辦公效率 免費 🔑 需 API Key

📖 技能介紹

PaddleOCR 中文文件解析技能

專業級中文文件 OCR 技能。基於百度飛槳引擎,支援文件解析和文字識別兩大核心能力,中文場景準確率業界領先。

快速判斷:用哪個模式?

使用者需求 使用模式 指令碼
"識別這個發票/合同/論文,保留表格和格式" 文件解析 scripts/paddleocr_api.py doc-parse
"把這個圖片裡的文字提取出來" 文字識別 scripts/paddleocr_api.py text-recog
"批次處理這些掃描件" 批次處理 scripts/paddleocr_api.py batch
"把OCR出來的表格匯出成Excel" 表格匯出 scripts/table_exporter.py
"安裝/檢查依賴" 依賴管理 scripts/install_deps.py

特徵判斷規則:

  • 有表格/公式/多欄排版 → 文件解析 (doc-parse)
  • 純文字截圖/簡單圖片 → 文字識別 (text-recog)
  • 多檔案 → 批次處理 (batch)

安裝與配置

1. 安裝依賴

python scripts/install_deps.py

可選依賴(表格匯出、PDF分頁):

python scripts/install_deps.py --with-optional

2. 獲取 PaddleOCR API 憑證

在 paddleocr.com 註冊賬號,進入 API 頁面獲取:

  • API Key 和 Secret Key(用於生成 access_token)
  • 或直接獲取 access_token

3. 配置憑證

方法一:環境變數(推薦)

export PADDLEOCR_TOKEN="your_access_token_here"

方法二:配置檔案 (~/.paddleocr/config.json)

{
  "access_token": "your_token",
  "default_language": "ch"
}

詳見 references/api_reference.md 的 Token Management 章節。


能力一:文件解析 (Document Parsing)

完整文件理解,保留所有結構。

CLI 使用

# 基本用法 - 輸出到終端
python scripts/paddleocr_api.py doc-parse invoice.jpg

# 儲存為 Markdown 檔案
python scripts/paddleocr_api.py doc-parse report.pdf -o report.md --json-output report.json

# 中英混合文件
python scripts/paddleocr_api.py doc-parse paper.pdf --language ch_en

# 完整引數
python scripts/paddleocr_api.py doc-parse contract.pdf \
  --token "your_token" \
  --language ch \
  --format both \
  --output contract.md \
  --json-output contract.json \
  --timeout 180

Python API

from scripts.paddleocr_api import parse_document

result = parse_document(
    "invoice.jpg",
    access_token="your_token",  # 或設定 PADDLEOCR_TOKEN 環境變數
    language="ch",
    output_format="markdown"
)

if result["success"]:
    print(result["text"])          # Markdown 格式文本
    print(result["tables"])        # 提取的表格資料
    print(result["formulas"])      # LaTeX 格式公式
    print(result["layout"])        # 版面分析結果

返回結果說明

欄位 型別 說明
text string Markdown 格式完整文本,含表格(Markdown table)和公式($$...$$)
tables list 表格陣列,每個元素含 cells(二維陣列)和 bbox(位置)
formulas list 公式陣列,每個元素含 latex(LaTeX 字串)和 bbox
layout dict 版面分析:blocks(區域型別和位置)和 reading_order(閱讀順序)

適用場景

  • 發票/財務報告 → 表格完整保留
  • 學術論文 → 公式以 LaTeX 輸出
  • 合同/法律文件 → 條款結構保留
  • 多欄排版 → 自動版面分析
  • 含圖表的文件 → 圖表區域單獨標註

能力二:文字識別 (Text Recognition)

快速準確的文本提取,返回結構化 JSON。

CLI 使用

# 基本用法
python scripts/paddleocr_api.py text-recog photo.jpg

# 儲存結果
python scripts/paddleocr_api.py text-recog scan.png -o text.txt --json-output result.json

# 英文識別
python scripts/paddleocr_api.py text-recog english_doc.jpg --language en

Python API

from scripts.paddleocr_api import recognize_text

result = recognize_text(
    "screenshot.png",
    access_token="your_token",
    language="ch",
    detect_direction=True
)

if result["success"]:
    print(result["text"])           # 純文本(換行分隔)
    for word in result["words"]:    # 逐詞結果
        print(f"  [{word['bbox']}] {word['text']}")

返回結果說明

欄位 型別 說明
text string 純文本,按行分隔
words list 逐詞結果,每個元素含 text、bbox(top/left/width/height)
direction int 文字方向(0=水平,1=豎排)
words_result_num int 識別到的文本區域數量

適用場景

  • 截圖文字提取
  • 照片/掃描件快速 OCR
  • 簡單文件純文本提取
  • 需要結構化 JSON 的二次開發

能力三:批次處理

# CLI 批次處理
python scripts/paddleocr_api.py batch page1.jpg page2.jpg page3.jpg --mode parse -d ./results

# 併發處理(Unix/macOS 下可用萬用字元,Windows 下請用具體檔名)
python scripts/paddleocr_api.py batch *.jpg --mode parse --workers 5
# Python API
from scripts.paddleocr_api import batch_process

results = batch_process(
    ["page1.jpg", "page2.jpg", "page3.jpg"],
    mode="parse",                    # "parse" 或 "recognize"
    output_dir="./ocr_results",      # 結果儲存目錄
    language="ch",
    max_workers=3,                   # 併發執行緒數
)

# 每個檔案生成 {filename}.parse.json 或 {filename}.recognize.json

能力四:表格匯出

將文件解析結果中的表格匯出為 Excel 或 CSV。

# 匯出為 Excel(預設),每張表一個 Sheet
python scripts/table_exporter.py result.json --format xlsx -o tables.xlsx

# 匯出為 CSV
python scripts/table_exporter.py result.json --format csv -o ./tables/

# 只匯出第1和第3張表
python scripts/table_exporter.py result.json --table-index 1 3

中文場景專項最佳化

針對國內常見文件型別的特殊處理,詳見 references/chinese_scenarios.md:

場景 推薦模式 關鍵最佳化
發票 doc-parse 金額大小寫配對、發票號碼正則提取
身份證 text-recog 18位身份證號校驗、出生日期提取
營業執照 doc-parse 統一社會信用程式碼提取
學術論文 doc-parse ch_en 語言、公式 LaTeX 輸出
合同/法律文件 doc-parse 條款編號保留、簽章區域標註

錯誤處理

常見錯誤

小蔥技能站7w4.net,專業的AI技能分享平臺。

錯誤 原因 解決
FileNotFoundError 檔案不存在 檢查檔案路徑
ValueError: access token required 未配置 Token 設定 PADDLEOCR_TOKEN 環境變數
API Error [17] 每日呼叫量超限 等待次日或升級套餐
API Error [110/111] Token 過期 重新獲取 Token(有效期30天)
Request timed out 大檔案處理超時 增加 timeout 引數或拆分檔案
Unsupported file type 檔案格式不支援 轉換為 JPG/PNG/PDF

自動處理

指令碼內建以下自動處理:

  • RGBA → RGB 自動轉換
  • 大圖自動縮放(保持寬高比)
  • Base64 編碼自動完成
  • 臨時錯誤自動重試(預設 3 次,指數退避)
  • 錯誤時返回結構化錯誤資訊(success: false + error 欄位),不拋異常

參考資源

  • API 詳細文件:references/api_reference.md — 完整 API 規範、引數說明、錯誤碼
  • 中文場景指南:references/chinese_scenarios.md — 發票/身份證/營業執照等專項模板
  • PaddleOCR 官網:https://www.paddleocr.com
  • 百度 AI 開放平臺:https://ai.baidu.com/tech/ocr

與同類技能對比

對比維度 doc-lingxi 通用英文 OCR
中文準確率 ⭐⭐⭐⭐⭐ 業界領先 ⭐⭐ 較差
表格識別 ✅ 完整結構保留 ❌ 不支援
公式識別 ✅ LaTeX 輸出 ❌ 不支援
版面分析 ✅ 自動分析 ❌ 不支援
部署方式 雲 API(無需本地 GPU) 本地安裝
免費額度 500-50,000 頁/天(按套餐) 完全免費
多語言 12+ 語言 100+ 語言

🤖 AI 評測

這個技能質量不錯,文件寫得詳細清楚,功能覆蓋全面(文件解析、表格識別、批次處理等),對中文場景有專門最佳化。上手難度較低,錯誤提示也比較友好。主要不足是缺少一些後設資料資訊,部分功能在某些系統上可能受限。總體來說是一個成熟可用的 OCR 技能,適合需要處理中文文件的使用者。

📊 多維度評分

適應性4.2
規範性4.6
有效性4.7
可靠性4.6
可信度4.9

📁 包含檔案 (6 個)

📄 SKILL.md 9.2 KB
📄 references/api_reference.md 7.8 KB
📄 references/chinese_scenarios.md 3.9 KB
📄 scripts/install_deps.py 4.5 KB
📄 scripts/paddleocr_api.py 21.2 KB
📄 scripts/table_exporter.py 5.5 KB