1

我在 Python 中使用 Tabula 模块。我正在尝试从 PDF 输出文本。

我正在使用这段代码:

pdf_read = tabula.read_pdf(
    input_path = "Test File.pdf",
    pages = start_page_number,
    guess=False,
    area=(81.735,18.55,391.285,273.61),
    relative_area = False,
    format="TSV",
    output_path="testing_area.tsv"
    )

当我运行我的代码时,它显示“输出文件为空”。

知道为什么会这样吗?

编辑:如果我删除了除 input_path 和 pages 之外的所有内容,我的数据将被正确读入 pdf_read,它只是不会输出到外部文件中。

这个选项有问题……嗯……

编辑#2:我想出了为什么区域部分不起作用,现在它是,但由于某种原因我仍然无法让它输出文件。

编辑#3:我试着看这个:How to convert PDF to CSV with tabula-py?

但我不断收到一条错误消息:“build_options() 有一个意外的关键字参数‘电子表格’

编辑#4:我使用的是最新版本的 tabula.py,它没有电子表格选项。

但是仍然无法输出带有数据的文件。

4

1 回答 1

1

我不知道为什么上面不起作用,所以 pdf_read 的输出是一个列表。

我将列表转换为数据框,然后使用 to_csv 输出数据框。

代码如下:

import pandas as pd

df = pd.DataFrame(pdf_read,columns=["column_a"])

output_df = df.to_csv(

    "alternative_attempt_1.txt",
    header=True,
    index=True,
    sep='\t',
    mode='w',
    encoding="cp1252"

    )
于 2020-11-25T02:14:38.277 回答