Extrair texto usando colunas PdfMiner e PyPDF2 Mescla
Eu estou tentando analisar o texto do arquivo PDF usando o pdfMiner, mas o texto extraído é mesclado. Eu estou usando o arquivo pdf do seguinte link.
Eu sou bom com qualquer tipo de saída (arquivo / string). Aqui está o código que retorna o texto extraído como string para mim, mas por algum motivo, as colunas são mescladas.
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
Eu também tentei o PyPdf2, mas enfrentei o mesmo problema. Aqui está o código de exemplo para 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")
Eu também tenteipdf2txt.py mas incapaz de obter a saída formatada.