Skip to main content
 首页 » 编程设计

python之将 PDF 转换为文本之保留表格行之Python

2025年05月04日10shihaiming

我想将 pdf 文档中的表格转换为文本。我找到了以下将 pdf 转换为文本的代码。但是,当它转换时,它不会将数据保留在正确的行中。它将所有内容放在一长串字符串中。使用 Python 从 PDF 转换为文本时,有什么方法可以保留表格中的行吗?

from pdfminer.pdfparser import PDFDocument, PDFParser 
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter, process_pdf 
from pdfminer.pdfdevice import PDFDevice, TagExtractor 
from pdfminer.converter import XMLConverter, HTMLConverter, TextConverter 
from pdfminer.cmapdb import CMapDB 
from pdfminer.layout import LAParams 
from cStringIO import StringIO 
 
def convert_pdf(path): 
 
    rsrcmgr = PDFResourceManager() 
    retstr = StringIO() 
    codec = 'utf-8' 
    laparams = LAParams() 
    device = TextConverter(rsrcmgr, retstr, codec=codec, laparams=laparams) 
 
    fp = file(path, 'rb') 
    process_pdf(rsrcmgr, device, fp) 
    fp.close() 
    device.close() 
 
    str = retstr.getvalue() 
    retstr.close() 
    return str 

请您参考如下方法:

Pdfminer 自带文本提取工具 pdf2txt.py ,它具有分析布局的能力。您可以尝试使用它,或研究它以了解其工作原理。