You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python提取PDF文本并关联保险合同特定字段值

提取保险合同PDF中指定字段与对应数值的问题

已使用的PDF文本提取代码

我用以下基于pdfminer的Python代码提取保险合同PDF中的文本(字符串形式):

import io
from pdfminer.converter import TextConverter
from pdfminer.pdfinterp import PDFPageInterpreter
from pdfminer.pdfinterp import PDFResourceManager
from pdfminer.pdfpage import PDFPage


def extract_text_by_page(pdf_path):
    with open(pdf_path, 'rb') as fh:
        for page in PDFPage.get_pages(fh,
                                      caching=True,
                                      check_extractable=False):
            resource_manager = PDFResourceManager()
            fake_file_handle = io.StringIO()

            converter = TextConverter(resource_manager,
                                      fake_file_handle)

            page_interpreter = PDFPageInterpreter(resource_manager,
                                                  converter)

            page_interpreter.process_page(page)
            text = fake_file_handle.getvalue()

            yield text

            # close open handles
            converter.close()
            fake_file_handle.close()


def extract_text(pdf_path):
    text = ""
    for page in extract_text_by_page(pdf_path):
        #print(page)
            text= page+" "+text
        return text
        # Driver code
    
    
if __name__ == '__main__':
    text=extract_text('document.pdf')
    print(text)

需求说明

需要提取固定红色标识的字段(如Oneri di registrazione atti giudiziari)及其对应的蓝色数值,示例输出如下:

  • 执行代码:
    print(oneri_di_registrazione_atti_giudiziari)
    
    输出字符串:"Valore in lite minimo 300 Limite di indennizzo 500"
  • 执行代码:
    print(tutela_dati_personali)
    
    输出字符串:"Massimale per evento 25000"

红色字段不会随文件变化,但蓝色数值可能改变,希望将数值与对应红色字段关联。

提取到的原始文本

Valoreinliteminimoeuro300,00OneridiregistrazionediattigiudiziariLimitediindennizzoeuro500,00PerlagaranziaATTIVITA'AZIENDALECOMPLETAMassimalepereventoeuro50.000,00SpeseperunsecondolegaledomiciliatarioLimitediindennizzoeuro2.000,00ControversiecontrattualiconifornitoriValoreinlitemassimoEuro50.000,00ControversiecontrattualiconifornitoriScoperto20%PerlagaranziaSALUTEESICUREZZASULLAVOROMassimalepereventoeuro25.000,00PerlagaranziaTUTELADEIDATIPERSONALIMassimalepereventoeuro25.000,00

内容的提问来源于stack exchange,提问作者Mario

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 08:01:02