Tabula-py 无法正确识别列

问题描述

我正在尝试使用 tabula 识别 pdf 文档。我使用此代码

df = tabula.read_pdf(io.BytesIO(content),pages=12,pandas_options={'header': None},multiple_tables = True,columns=(78.39,226.97,280.97,370.04,461.02,550.06))

但是,识别后,前两列是一个单列。我试图改变列 坐标,但它没有帮助。

另外,我尝试使用 guess=False,但它也无济于事。

我想知道是否有人可以帮助我解决这个问题? 非常感谢

解决方法

用 SumatraPDF 阅读器打开 PDF。 按“m”激活左上角的测量显示。 然后将光标放在表格的左上角和右下角以获得如下坐标:

enter image description here

右下角:

enter image description here

  1. 运行命令:

java -jar tabula-1.0.2-jar-with-dependencies.jar -p 2 -a 164,20,390,771 "myPdf.pdf" -o outfile.csv

注意: a) 选项‘p’给出页码

b) 选项“a”具有表格区域(上、左、下、右)——从 SumatraPDF 阅读器获得的坐标。

c) “[仅限演示使用] Create_Opp_1822018_111526_AM - signed.pdf”是要从中提取的 pdf 格式

d) 选项‘o’给出要保存到的文件名。如果在运行 tabula 命令之前存在此文件,请删除此文件。

这将创建 csv

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...