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

使用tabula转PDF到Excel报错:'list' object has no attribute 'to_excel'求助

解决tabula转换PDF到Excel时的AttributeError问题

错误原因

tabula.read_pdf() 默认返回一个列表(列表中的每个元素对应PDF页面里的一个独立表格),而to_excel是Pandas DataFrame独有的方法,列表对象没有这个属性,因此触发AttributeError。

解决方案

根据PDF中表格的数量,选择对应的处理方式:

情况1:PDF页面只有一个表格

直接提取列表的第一个元素(索引为0),再调用to_excel:

import tabula
import pandas as pd

# 读取PDF页面的表格列表
df_list = tabula.read_pdf("files/Seniority List 2018 19.pdf", pages=1)

# 提取单个表格
df = df_list[0]

# 导出为Excel,index=False避免写入多余的索引列
df.to_excel('files/excel.xlsx', index=False)

情况2:PDF页面有多个表格

如果页面包含多个表格,可以将每个表格保存到Excel的不同工作表中:

import tabula
import pandas as pd

# 读取所有表格
df_list = tabula.read_pdf("files/Seniority List 2018 19.pdf", pages=1, multiple_tables=True)

# 写入Excel的不同工作表
with pd.ExcelWriter('files/excel.xlsx') as writer:
    for idx, table in enumerate(df_list, start=1):
        table.to_excel(writer, sheet_name=f"表格{idx}", index=False)

额外说明

  • 显式指定multiple_tables=True可以更清晰地表明需要提取页面中的多个表格(该参数默认值为True)。
  • 添加index=False可以避免将DataFrame的行索引写入Excel文件,让输出的表格更符合预期格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 20:00:58