我试图解析一些pdf文件,以便提取一些关键的information.There是在每个pdf中包含这些信息的一部分的表的数量。因此,我尝试使用camelot来提取表,并获得了很好的结果,但我希望提取每个表的标题,因为我希望为每个表与其标题进行映射。因此,我尝试使用tables[i]._bbox获取每个表的坐标,然后向这些坐标添加一些边距,以检测表标题的区域(它可以在表的顶部、左侧或底部),如下图所示:title of table on the left
谁能告诉我如何使用python从pdf中获取包含table标题的红色区域的坐标?
发布于 2019-10-23 17:57:07
您可以直接创建PDF解析器。例如,对于Lattice:
parser = Lattice(**kwargs)
for p in pages:
t = parser.extract_tables(p, suppress_stdout=suppress_stdout,
layout_kwargs=layout_kwargs)
tables.extend(t)然后,您可以访问包含页面中所有组件的parser.layout。这些组件都有bbox (x0, y0, x1, y1),提取的表也有一个bbox对象。您可以找到离表格最近的组件,并提取其文本和坐标。如果您不想更改在camelot中调用表提取的方式,您可以再次解析PDF:
from camelot import utils
layout, dim = utils.get_page_layout(file_name)https://stackoverflow.com/questions/58010550
复制相似问题