首页 > 解决方案 > 如何阻止 camelot-py 将单个单元格中的多行文本拆分为多个单元格?

问题描述

我正在尝试构建一个应用程序来读取任意 PDF 并从中提取表格,并且我正在使用Camelot来提取表格。这适用于单元格具有单行值的表格。但是,对于具有多行值的单元格的表格,Camelot 将单个单元格中的多行文本拆分为多个单元格。由于 Camelot 是建立在 pdfminer 之上的,我尝试调整布局分析参数(特别是line_margin)以使 Camelot 不会拆分行。但是,问题仍然存在。

我可以调整哪些其他参数来处理这个问题?这是有此问题的表的示例。 在此处输入图像描述

我不想使用“格子”风格,因为我希望看到的大多数表格都没有分界线。

标签: pythonpython-camelot

解决方案


如果您的 PDF 表格中的线条比单元格更亮,如您的示例所示,那么您可以尝试使用 process_background=True 的格子风格。

tables = camelot.read_pdf('background_lines.pdf', process_background=True)

见,https://camelot-py.readthedocs.io/en/master/user/advanced.html


推荐阅读