【发布时间】:2018-09-08 16:08:06
【问题描述】:
在 Python 3 中,我有一个包含 6,041 页的 PDF 文件“Ativos_Fevereiro_2018_servidores_rj.pdf”。我在一台装有 Ubuntu 的机器上
在每一页的顶部都有文本,两行。在一个表格下方,带有标题和两列。每张表36行,最后一页少
在每一页的最后,表格之后,还有一行文字
我想从此 PDF 创建一个 CSV,只考虑页面中的表格。并忽略表格前后的文字
最初我测试了 tabula-py。但它会生成一个空文件:
from tabula import convert_into
convert_into("Ativos_Fevereiro_2018_servidores_rj.pdf", "test_s.csv", output_format="csv")
请问,有没有人知道另一种使用 tabula-py 来满足这种需求的方法?
或者在这种文件类型中将 PDF 转换为 CSV 的另一种方法?
【问题讨论】:
-
试试
import tabula和tab = tabula.read_pdf("Ativos_Fevereiro_2018_servidores_rj.pdf", encoding='latin-1')会抛出错误吗?如果没有,请运行print(tab)。也是空的吗? -
谢谢。是的,它仍然是空的(无)
-
tabula 似乎在 pdf 中找不到表格。如果没有 pdf,很难说出原因(在我的 pdf 表格上工作得很好)。也许您可以设置
guess=False并指定area和/或columns(请参阅选项文档)或尝试pdfquery(github.com/jcushman/pdfquery) 或查看“原始字符串”可以在哪里获得您(例如使用PyPDF2 ) -
谢谢。我正在查看文档 (github.com/chezou/tabula-py)。但是我如何找到桌子所在的区域?我的 PDF 在这里:drive.google.com/file/d/1P8kF0gUOVls6sOGed4R0C2PlVF5RFtU6/…
-
是否需要 PDF 编辑程序来查找坐标?