问题标签 [pdfminer]

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 投票
15 回答
84390 浏览

python - 如何使用 pdfminer 作为库

我正在尝试使用pdfminer从 pdf 中获取文本数据。我可以使用 pdfminer 命令行工具 pdf2txt.py 成功地将这些数据提取到 .txt 文件中。我目前这样做,然后使用 python 脚本清理 .txt 文件。我想将 pdf 提取过程合并到脚本中并为自己节省一步。

当我找到这个链接时,我以为我正在做某事,但我没有成功使用任何解决方案。也许那里列出的功能需要再次更新,因为我使用的是更新版本的 pdfminer。

我也尝试了此处显示的功能,但它也不起作用。

我尝试的另一种方法是使用os.system. 这也没有成功。

我正在使用 Python 版本 2.7.1 和 pdfminer 版本 20110227。

0 投票
2 回答
1437 浏览

python - python PDFminer 只解析页面的一部分

我正在使用模块pdfminerpython 模块解析 PDF 文档。我只想从此文档中提取文本。

这个过程很顺利,但是当我提取LTText*对象时,我意识到我没有得到该LTText*对象中的所有文本。它似乎有一个内部缓冲区或类似的东西,导致每页中的文本都被剪切。

我的代码:

text_obj 变量从不包含整个文本,即使 pdf 文件页面中的文本始终采用相同的格式。

我不认为问题出在代码中,因为我还使用 pdf2txt.py 脚本将 pdf 文件转换为 txt,并且生成的 txt 文件的页面也是“剪切”的。

看来问题可能出在 pdfminer 配置或我的 pdf 文件格式中……我完全迷失了。

有任何想法吗?

0 投票
2 回答
7795 浏览

python - PDFMiner - 遍历页面并将其转换为文本

因此,我试图从一些 PDF 中获取特定的文本,并且我正在使用 Python 和 PDFMiner,但由于 2013 年11 月发生的 API 更改而遇到了一些麻烦。基本上,要从 PDF 中获取我想要的部分文本,我目前必须将整个文件转换为文本,然后使用字符串函数来获取我想要的部分。我想要做的是循环浏览 PDF 的每一页,并将每一页一一转换为文本。然后,一旦我找到了我想要的部分,我就会阻止它阅读那个 PDF。

我将发布位于我的文本编辑器 atm 中的代码,但它不是工作版本,它更像是高效解决方案的中途版本:P

这是这样做的旧方法(或者至少知道旧方法是如何做到的,线程对我来说不是很有用)。但是现在我必须使用 PDFPage.get_pages 而不是 PDFDocument.get_pages 并且方法及其参数完全不同。

目前,我正试图弄清楚我传递给 PDFPage 的 get_pages 方法的“Klass”变量到底是什么

如果有人能对 API 的这一部分有所了解,甚至提供一个工作示例,我将非常感激。

0 投票
1 回答
903 浏览

google-app-engine - PyDev PDFMiner GAE: ImportError: No module named pdfminer.converter

我在 PyDev 中从事 GAE 项目我想使用 PDFminer 库将 pdf 文件转换为文本文件。

我的问题是当我运行应用程序时它不起作用并显示此错误消息: ImportError: No module named pdfminer.converter

我在一个普通的 python 项目中测试了相同的代码,它工作正常。我在 python 控制台中使用了相同的代码,它也可以工作

我将pdfminer文件夹添加到python解释器中,我删除了解释器并再次添加它,但我总是遇到同样的错误。

真的我不需要做什么,有人可以帮助我吗?

0 投票
0 回答
838 浏览

python - pdfminer/poppler - 如何设置编码

我有一个文件,即http://www.agfl.cs.ru.nl/papers/manual28.pdf (英文)

Pdfminer 和 poppler 在大多数解析页面中显示相同的结果,例如: ¾º¿  ÒÙ Öݸ ¾¼¼ Ⱥ ¾º ÂÙÒ ¸ ¾¼¼ ź Ë ÙØØ Ö¸ Ǻ Ë

它似乎无法读取字体自定义编码。如何指定?

这是代码示例:

0 投票
2 回答
2224 浏览

python - python - 从网页中提取 pdf 并转换为 html

我的目标是拥有一个可以访问特定网页的 python 脚本,提取每个页面上文件名中包含特定单词的所有 pdf 文件,将它们转换为 html/xml,然后通过 html 文件从 pdf 中读取数据表。

到目前为止,我已经导入了 mechanize(用于浏览页面/查找 pdf 文件)并且我有 pdfminer,但是我不确定如何在脚本中使用它来执行它在命令行上执行的相同功能。

完成我的任务最有效的库组是什么,您建议如何处理每个步骤?如果这对于stackoverflow来说太具体了,我深表歉意,但是我在使用谷歌搜索和稀疏文档来拼凑如何编写代码时遇到了麻烦。谢谢!


编辑:所以我决定在这个上使用 Scrapy。到目前为止我真的很喜欢它,但现在我有一个新问题。我已经定义了一个 PDFItem() 类以与我的蜘蛛一起使用,其中包含字段标题和 url。我有一个选择器,它可以抓取我想要的所有链接,我想浏览这些链接并为每个链接创建一个 PDFItem。这是我下面的代码:

url 行效果很好,但我真的不知道如何为标题做同样的事情。我想我可以只在顶部执行查询,但在选择器的末尾添加“/text()”,但这似乎过分了。有没有更好的方法来遍历链接数组中的每个链接对象并获取文本和 href 值?

0 投票
2 回答
2167 浏览

linux - 如何根据其位置从PDF中提取文本?

我有多个 PDF,我想从它们的第一页中提取某个区域的文本。因此,鉴于我有 PDF 中文本的边界框坐标,如何使用命令行提取该文本。

我研究了一下,发现 PDFMiner 和 PDFBox 可以做到这一点。但是 PDFMiner 的文档记录很差。

有人可以告诉我如何使用 PDFMiner 做到这一点吗?或者您是否可以提出其他解决方案?

PS:我在 Linux 终端上。

0 投票
3 回答
62364 浏览

python - 如何从 PDF 文件中提取文本和文本坐标?

我想使用 PDFMiner 从 PDF 文件中提取所有文本框和文本框坐标。

许多其他 Stack Overflow 帖子解决了如何以有序的方式提取所有文本,但是我如何执行获取文本和文本位置的中间步骤?

给定一个 PDF 文件,输出应该类似于:

0 投票
0 回答
2302 浏览

python - PDFMiner 无法提取字体

我正在使用 PDFMiner 将一些 pdf 报告转换为纯文本,而我的一堆输入 pdf 只出现了几行已识别的行,然后是 (cid:%d) 的列表,有点像这样......

检查报告

(cid:4)(cid:5)(cid:6)(cid:7)(cid:8)(cid:9) (cid:10)(cid:9)(cid:11)(cid:9) (cid:12)(cid:9)(cid:5)(cid:13)(cid:9) (cid:14)(cid:8)(cid:15)(cid:16)(cid:9) (cid:12) (cid:17)(cid:18)(cid:13)(cid:19)(cid:20) (cid:21)(cid:8)(cid:22)(cid:23) (cid:18)(cid:12)(cid:6)(cid:22)(cid:24) (cid:25)(cid:5)(cid:26)(cid:27)(cid:9) (cid:13)(cid:22)(cid:6)(cid:18)(cid:5) (cid:5)(cid:8)(cid:15)(cid:16)(cid:9) (cid:12)

检查一下,我认为问题在于文档的大部分内容是一种拒绝被提取的字体。调试问题有点奇怪,因为字体似乎在一夜之间发生了变化(不要问如何,它就是这样)。

我不确定什么可能很重要,但今天该字体具有以下属性:

名称 = 'font0000000018f29a3e' - cidcoding = 'Adobe-Identity'- unicode_map = 'UnicodeMap: /Adobe-Identity-UCS' - unicode_map.cid2unichr = {}

我在 Mac 上使用 2.7 并尝试了一些东西

  1. PyPDF2
  2. 复制并粘贴到 textedit 中(字符为空白)
  3. 使用重建的 cmaps 卸载和重新安装
  4. 关闭机器然后重新打开

作为参考,这些报告都是类似的形式,其中之一可以在这里找到。

http://www.ofsted.gov.uk/provider/files/959173/urn/118074.pdf

该问题适用于 2010 年 9 月之前发布的所有报告

0 投票
1 回答
1127 浏览

python - 按第一个目录级别批量拆分 PDF?

我正在寻找从 PDF 中提取文本以进行数据挖掘任务。我正在查看的 PDF 包含多个报告,每个报告在文档目录中都有自己的第一级条目。此外,PDF 开头有一个书面目录,其中包含每个报告的页码(“从页到页”)。

我正在寻找一种方法:

  • 将 PDF 拆分为单独的报告,以便将每个报告转储到 .txt 文件中。

  • 将 PDF 的每个部分直接转储为 .txt。

到目前为止,我已经能够使用 PDFminer (python) 将整个文件转储到 .txt 中,如下所示:

此外,这将返回目录的整个结构:

知道如何从这里继续前进吗?任何使用 python、R 或 bash 的工具对我个人来说都是最容易使用的,但只要它能够基于文档的第一个大纲级别进行批量拆分,任何解决方案都会很棒。

谢谢你,马蒂亚斯