Как извлечь текст из PDF-файла с двумя столбцами с помощью PDFPlumberPython

Программы на Python
Ответить
Anonymous
 Как извлечь текст из PDF-файла с двумя столбцами с помощью PDFPlumber

Сообщение Anonymous »

Я работаю над задачами тематического моделирования с использованием Python и хотел бы извлечь тексты из годовых отчетов/отчетов об устойчивом развитии. Однако моя проблема в том, что когда я пытался извлечь отчет, извлеченные строки разрываются между двумя разными столбцами на странице, т. е. они соединяют две разные строки из соседнего абзаца, чтобы составить предложение. Как извлечь строки именно так, как они представлены в отчете. Я приложил версию отчета и строки, извлеченные с помощью функции.
Ниже приведена функция, которую я использую:
#function для получения PDF-файла по URL-адресу:

Код: Выделить всё

def converter(url):
text=[]
req= requests.get(url)
with pdfplumber.open(BytesIO(req.content)) as pdf:
for i in range(0, len(pdf.pages)):
pages= pdf.pages[i]
text.append(pages.extract_text())
return "\n".join(str(i) for i in text)
Изображение ниже представляет собой фрагмент отчета, который я извлекаю, текст в отчете разделен на два столбца, а функция extract_content смешивает эти два столбца, чтобы получить строку, т. е. объединяет строки в два столбца и представляет их как одну строку.
Изображение

Вот первая строка отчета (начало первого столбца и второго столбца, объединенных функцией):

\nОдной из моих первых обязанностей в 2019 году было интервью. Когда мы
приступили к новому стратегическому периоду \non шоу «Доброе утро, Норвегия», о котором
поговорим в 2016 году, я выразил надежду, что AF отнесется к этому \nо Цель AF — удвоить процент столь же сплоченных людей, когда мы
будем превзойти \nженщин

Было бы полезно, если бы я мог извлечь предложения точно так же, как указано в отчете.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»