问题标签 [tabula-py]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
28 浏览

python - 安装 tabula-py

我正在尝试运行以下代码:

但是当我在终端上运行它时,它显示以下错误:

第 2 行 pip install tabula-py ^ SyntaxError: invalid syntax

我该如何解决这个问题?我在我的机器上安装了 Java,因为我读到我们需要安装 java 环境才能安装 tabula-py

0 投票
1 回答
203 浏览

python-3.x - 使用 Python 从多列 pdf 中提取表格

我有以下格式的pdf

并试图提取名为表 1 和表 2 的两个表。我现在有以下代码:

但它将整个页面识别为具有两列的表,而不是返回两个表:表 1 和表 2

现在输出: 一个有两列的表格:第一列是这个页面的左列,第二列是这个页面的右列

需要的输出: 两个表,每列三列:表 1 和表 2

0 投票
1 回答
72 浏览

python-3.x - Python将列表转换为数组

我有一个 5 行 5 列的列表。

我正在尝试将此列表转换为数据框。

当我尝试这样做时,它只抓取第一行。

这失败了,因为我将它设置为 5,5:

当我把它切换到这个时:

它只抓住了第一排。

  1. 为什么这样做?
  2. 有什么建议吗?

编辑:添加上下文

我正在使用tabulapython 中的模块来读取 PDF 文件。PDF 文件结果存储在变量pdf_read.

当我这样做len(pdf_read)时,它的长度为 1,但是当我输入时 print(pdf_read)它说它是 5 行 x 5 列,这很奇怪。

编辑#2:数据类型

我运行了以下内容:

我得到了<class 'list'><class 'pandas.core.frame.DataFrame'>分别。

似乎我在列表中有一个数据框。

我运行了这段代码:

这只是返回一个 5,5 数据框,但每列中的所有值都是 NaN。

取得了一些进展,但需要弄清楚为什么现在没有填充这些值。

0 投票
0 回答
89 浏览

pandas - 如何使用 tabula-py 将 PDF 转换为 excel 到几个表的数据框?

我有一个 PDF 文件,其中有几个表格,例如:PDF 文件中的 表格

顺便说一句,我了解到我必须使用 Java 中的 tabula-py(注意:我正在使用 Jupyter Notebook 所以,我编写了这个代码:import pandas as pd import numpy as np

从表格导入 read_pdf 导入表格

pdf_path = "..\PDFs\pobreza2.pdf" #文件方向

df=tabula.read_pdf(pdf_path, pages="all", stream=True, guess=False, multiple_tables=True) #PDF有很多页有几个表

我得到了这个: 代码的输出

它就像一个列表,而不是一个数据框

那么,我怎样才能将这张表放入 Dataframe 中呢?表格有字符串和浮点对象

0 投票
0 回答
234 浏览

python - Tabula-py 没有正确提取行

使用 Tabula-py 提取 pdf 表,它提取所有行但没有正确拆分。采取下面的样本 pdf 进行提取。

1

尝试使用以下代码提取

它没有正确提取行,而是创建了未命名的列。像这样提取 2

帮我解决这个问题。提前致谢

0 投票
1 回答
79 浏览

java - tabula 要求我在已安装最新版本时更新 java

我已经对我的代码进行了几次测试,每次都运行良好,但现在由于某种原因,它引发了一个奇怪的错误,我会马上停止。我正在使用 tabula 读取一些 pdf 文件,这是出现错误的代码:

错误位于以“tables = tabula.read_pdf(...)”开头的行。

最重要的是,这是完整的错误消息:

它讨论了 java 依赖项(可能是因为 tabula 有 tabula-py 和 tabula-java ?),我发现的与此类错误最相关的问题是应该更新 java,而我的计算机上有最新版本。关于它可能是什么的任何想法?

0 投票
1 回答
498 浏览

python - 使用 python (tabula) 将 PDF 导出为 csv

将 PDF 文件导出到 csv 时,它返回错误:writeheader() 采用 1 个位置参数但给出了 2 个

0 投票
0 回答
100 浏览

python - 将 python 请求响应加载到 tabula.read_pdf

我有一个下载 pdf 作为响应的 URL。我想使用 python请求模块下载 pdf 文件,并希望在tabula模块的函数read_pdf中加载相同的响应,以便从 pdf 文件中提取 pdf。但是,我想在内存中执行此操作(而不保存在磁盘中),但read_pdf函数需要一个参数input_path,它应该是 str、路径对象或类似文件的对象)。谁能建议一种将响应对象转换为类文件对象的方法?

PS

  1. 我已经尝试过io模块的BytesIOStringIO但没有用。
  2. tabula doc 中提到了一个指向 pdf 文件的 URL,但我想在请求标头中传递一些附加参数以及代理,如果有任何方法可以在read_pdf中传递所有这些参数,则可以使用请求模块轻松完成可以做到的功能。
0 投票
1 回答
439 浏览

python - 没有明显表格行的表格的 Python Tabula

最近我尝试使用 tabula 来解析 pdf 中的表格,该表格的每个字段中都不包含任何行。

这导致创建一个列表,将所有不同的字段组合成一个(输出示例)。

如何将此单个字符串转换为数据框,以便我可以操纵数字?非常感谢

0 投票
0 回答
179 浏览

python - 使用 tabula-py 从 PDF 中读取表格和文本

是否可以使用 tabula-py 从 PDF 中提取表格和文本?

PDF 的顶部如下所示: 在此处输入图像描述

使用此代码:

它在获取表格方面做得很好,但我也想获取文本行“最后更新:2016 年 7 月 25 日”。

有没有一种方法 tabula-py 可以一次性为我做到这一点,还是我需要解析文件两次,一次使用 tabula-py,第二次使用不同的包来读取文本?我尝试了 lattice= 和 stream= 的不同组合,但没有成功。

(虽然在我的示例中,日期也是链接的一部分,但情况并非总是如此,所以我不能依赖它,需要从 PDF 中获取日期)。