PDFMiner - читать строки вместо столбцов

Я нашел некоторый код для извлечения данных в формате PDF ">от пользователя из stackoverflow. Но, глядя на вывод, он извлекает столбец за столбцом. Есть ли способ заставить pdfminer.six читать данные построчно?

Это код, который я использовал (только немного изменен по сравнению с оригиналом и удалены комментарии для удобства чтения). Вот также скриншот текущего вывода с примером pdf.

from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfpage import PDFTextExtractionNotAllowed
from pdfminer.pdfinterp import PDFResourceManager
from pdfminer.pdfinterp import PDFPageInterpreter
from pdfminer.pdfdevice import PDFDevice
from pdfminer.layout import LAParams
from pdfminer.converter import PDFPageAggregator
import pdfminer


fp = open('test.pdf', 'rb')

parser = PDFParser(fp)

document = PDFDocument(parser)

if not document.is_extractable:
    raise PDFTextExtractionNotAllowed

rsrcmgr = PDFResourceManager()

device = PDFDevice(rsrcmgr)

laparams = LAParams()

device = PDFPageAggregator(rsrcmgr, laparams=laparams)

interpreter = PDFPageInterpreter(rsrcmgr, device)

def parse_obj(lt_objs):

    for obj in lt_objs:
        if isinstance(obj, pdfminer.layout.LTTextBoxHorizontal):
            print("{}".format(obj.get_text().replace("\n", "")))
        elif isinstance(obj, pdfminer.layout.LTFigure):
            parse_obj(obj._objs)

for page in PDFPage.create_pages(document):
    interpreter.process_page(page)
    layout = device.get_result()

    parse_obj(layout._objs)

Заранее спасибо.


person riffel    schedule 20.12.2017    source источник