Equ*_*Dev 4 python pdf text python-3.x
需要解析 PDF 文件以仅提取文本的第一行,并寻找不同的 Python 包来完成这项工作,但没有任何运气。
尝试过:
PDFminer,PDFminer.six和PDFminer3k,这对于简单的工作来说似乎过于复杂,我找不到一个简单的工作示例
tika,它给出了不同的终端错误消息并且非常慢
pdftotext安装失败
pdf2text在“导入 pdf2text”时失败,当更改为“pdftotext”时,即使pip list显示已安装“Extractor”也无法导入“ImportError: cannot import name 'Extractor'”
通常我发现安装的 Python 包工作得非常好,但是将 PDF 解析为文本似乎是一个丛林,无数工具也表明了这一点。
关于如何在 Python 中将 PDF 文件简单解析为文本的任何建议?
添加了 PyPDF2 示例
PyPDF2 的一个例子是:
import PyPDF2
pdfFileObj = open('file.pdf', 'rb')
pdfReader = PyPDF2.PdfFileReader(pdfFileObj)
pageObj_0 = pdfReader.getPage(0)
print(pageObj_0.extractText())
Run Code Online (Sandbox Code Playgroud)
它返回垃圾为:
$%$%&%&$'('~!)"*+#
基于 pdfminer,我能够从pdf2txt.py脚本(与 pdfminer 一起提供)中提取必要的内容到一个函数中:
import io
from pdfminer.pdfinterp import PDFResourceManager
from pdfminer.layout import LAParams
from pdfminer.converter import TextConverter
from pdfminer.pdfinterp import PDFPageInterpreter
from pdfminer.pdfpage import PDFPage
def pdf_to_text(path):
with open(path, 'rb') as fp:
rsrcmgr = PDFResourceManager()
outfp = io.StringIO()
laparams = LAParams()
device = TextConverter(rsrcmgr, outfp, laparams=laparams)
interpreter = PDFPageInterpreter(rsrcmgr, device)
for page in PDFPage.get_pages(fp):
interpreter.process_page(page)
text = outfp.getvalue()
return text
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3066 次 |
| 最近记录: |