我遇到了一个很棒的图书馆,叫做 Tabula,它几乎成功了。不幸的是,第一页上有很多无用的区域,我不想让 Tabula 提取它们。根据文档,您可以指定要从中提取的页面区域。但是,无用区域仅在我的 PDF 文件的第一页上,因此,对于所有后续页面,Tabula 将错过顶部部分。有没有办法指定区域条件 仅 适用于 PDF 的第一页?
from tabula import read_pdf
df = read_pdf(r"C:\Users\riley\Desktop\Bank Statements\50340.pdf", area=(530,12.75,790.5,561), pages='all')
原文由 Riley Hun 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在尝试做类似的事情(解析银行对账单)并且遇到了同样的问题。到目前为止,我发现解决这个问题的唯一方法是单独解析每个页面。
唯一的问题是,这需要事先知道您的文件由多少页组成。目前我还没有找到如何直接使用 Tabula 执行此操作的方法,因此我决定使用 pyPdf 模块来获取页数。
请注意,在单独或同时阅读每一页时,存在一些 已知和未解决的问题。
祝你好运!
2017 年 8 月 3 日编辑:
找到了一种无需通过 pyPDF 即可计算 pdf 页数的更简单方法
其中 file_path 当然是你文件的路径