You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python Tabula模块转换PDF至XLSX时数据全在首列的解决方法

解决Tabula转换PDF后Excel第一列冗余问题

方法一:直接删除DataFrame第一列

在数据导出前,通过列索引移除第一列即可:

import tabula
df = tabula.read_pdf('Question.pdf', pages=1, lattice=True)[1]

df.columns = df.columns.str.replace('\r', ' ')
data = df.dropna()
# 删除索引为0的第一列
data = data.drop(data.columns[0], axis=1)
data.to_excel('data.xlsx', index=False)

如果已知第一列的具体名称,也可以直接传入列名替代索引,比如data.drop("冗余列名", axis=1)。

方法二:优化Tabula读取参数避免冗余列

若PDF表格布局导致识别出多余列,可手动指定列分割位置,或切换读取模式:

import tabula
# 根据PDF表格实际宽度,手动设置列分割的横坐标位置
df = tabula.read_pdf('Question.pdf', pages=1, lattice=True, columns=[80, 180, 280, 380])[1]

df.columns = df.columns.str.replace('\r', ' ')
data = df.dropna()
data.to_excel('data.xlsx', index=False)

columns参数的数值对应PDF页面上的横向坐标,需根据你的Question.pdf表格布局调整;也可尝试将lattice=True替换为stream=True,适配不同类型的PDF表格。


内容的提问来源于stack exchange,提问作者Yunus Emre

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 05:40:32