我想使用 NLP 模块处理一些 pdf 文件,然后我想从所有现有表中清除这些文件。
这是使用 pdfplumber 提取表格的代码
import pdfplumber
pdf = pdfplumber.open("file.pdf")
page = pdf.pages[1]
table=page.extract_table()
但我想反转操作以仅提取文本
免责声明:我是以下内容的作者pText
,本答案中使用的库。
-
加载Document
-
你需要定义一个LocationFilter
A LocationFilter
其作用与罐头上所说的差不多。它将侦听解析事件(例如“渲染文本”或“将字体更改为”),但它只允许那些在给定边界内通过的事件。
请记住 PDF 坐标中的原点位于左下角。
这LocationFilter
因此,在此示例中将仅匹配页面左下角的文本。
- Add a
SimpleTextExtraction
to the LocationFilter
下一个问题是“什么是LocationFilter
要将事件传递给?”
在这种情况下,您可以先尝试SimpleTextExtraction
.
把它们放在一起:
l0 = LocationFilter(0, 0, 100, 100)
l1 = SimpleTextExtraction()
l0.add_listener(l1)
doc = PDF.loads(pdf_file_handle, [l])
文档加载后,您可以询问SimpleTextExtraction
对于给定的所有文本Page
.
l1.get_text(0)
您可以通过以下任一方式获取 pTextGitHub https://github.com/jorisschellekens/ptext-release,或使用PyPi https://pypi.org/project/ptext-joris-schellekens/还有很多examples https://github.com/jorisschellekens/ptext-release/blob/master/EXAMPLES.md,查看它们以了解有关处理图像的更多信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)