Извлечение текста с использованием столбцов PdfMiner и PyPDF2 Merges
Я пытаюсь проанализировать текст PDF-файла с помощью pdfMiner, но извлеченный текст объединяется. Я использую PDF-файл по следующей ссылке.
Я хорош с любым типом вывода (файл / строка). Вот код, который возвращает извлеченный текст в виде строки для меня, но по какой-то причине столбцы объединены.
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfinterp import PDFResourceManager, process_pdf
import StringIO
def convert_pdf(filename):
rsrcmgr = PDFResourceManager()
retstr = StringIO()
codec = 'utf-8'
laparams = LAParams()
device = TextConverter(rsrcmgr, retstr, codec=codec)
fp = file(filename, 'rb')
process_pdf(rsrcmgr, device, fp)
fp.close()
device.close()
str = retstr.getvalue()
retstr.close()
return str
Я также пробовал PyPdf2, но столкнулся с той же проблемой. Вот пример кода для PyPDF2
from PyPDF2.pdf import PdfFileReader
import StringIO
import time
def getDataUsingPyPdf2(filename):
pdf = PdfFileReader(open(filename, "rb"))
content = ""
for i in range(0, pdf.getNumPages()):
print str(i)
extractedText = pdf.getPage(i).extractText()
content += extractedText + "\n"
content = " ".join(content.replace("\xa0", " ").strip().split())
return content.encode("ascii", "ignore")
Я также пыталсяpdf2txt.py но не удается получить отформатированный вывод.