-1

pdf包含逐行分隔的数据,并且一行后有一个表格,其中包含标题及其下方的相应值,我无法有序地获取它,而是我一个接一个地获取完整的列标题作为文本。我能够获取数据,逐行显示,以关联标题及其相应的值,但我无法为表格做同样的事情。

fp = open(my_file, "rb")
parser = PDFParser(fp)
document = PDFDocument(parser)
if not document.is_extractable:
     raise PDFTextExtractionNotAllowed

rsrcmgr = PDFResourceManager()
laparams = LAParams()
laparams.line_margin = 12
device = PDFPageAggregator(rsrcmgr, laparams=laparams)
interpreter = PDFPageInterpreter(rsrcmgr, device)
for page in PDFPage.create_pages(document):
    interpreter.process_page(page)
    layout = device.get_result()
    for lt_obj in layout:
        if isinstance(lt_obj,LTTextBox):
            extracted_text += lt_obj.get_text()

print  extracted_text 
4

1 回答 1

1

PDF 没有按任何特定顺序排列(尽管通常顺序不是完全随机的)。

如果是文本,您将需要找到标题,然后从 X、Y 位置推断行的内容。

于 2017-12-31T20:02:09.293 回答