问题标签 [pypdf2]

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 投票
1 回答
4935 浏览

python - 用于遍历目录中的 PDF 并找到匹配行的 Python 脚本

目前,我通过电子邮件将所有报告作为 pdf 附件发送给我。我所做的是设置 Outlook 每天自动将这些文件下载到某个目录。有时,这些 pdf 文件中没有任何数据,仅包含“没有与选择标准匹配的数据要呈现”这一行。我想创建一个 python 程序,它遍历该目录中的每个 pdf 文件,打开它并查找这些单词,如果它们包含该短语,则删除该特定 pdf。如果他们不这样做,那么什么也不做。通过 reddit 的帮助,我拼凑了以下代码:

我已经测试了 3 个文件,其中一个包含匹配的短语。无论文件如何命名或顺序如何,它都会失败。我已经使用名为 3.pdf 的目录中的一个文件对其进行了测试。下面是错误代码。

FileNotFoundError: [WinError 2] 系统找不到指定的文件:>'3.pdf'

这将大大减少我的工作量,对我这个新手来说是一个很好的学习例子。欢迎所有帮助/批评。

0 投票
1 回答
18014 浏览

python - 如何使用带有 etoken(笔式驱动器)的 Python 对 PDF 文档进行数字签名?

如何使用 Python 对 PDF 文档进行数字签名?我有一个 etoken(在笔式驱动器中)。

此外,我使用 openpyxl 创建了一个 excel 文件并将其转换为 PDF。现在有一个要求,我需要为该 PDF 文档添加数字签名。

有什么办法可以在 python 中实现这一点?

0 投票
2 回答
16039 浏览

python - PyPDF2 按页面拆分 pdf

我想使用 PyPDF2 拆分 pdf 文件。

网络中的所有示例都太难或不起作用或总是给出错误“AttributeError:'PdfFileWriter'对象没有属性'stream'”

有人可以帮忙吗?需要将一份 3 页的 pdf 文件分成三个不同的文件。

我从那开始:

但不知道下一步该怎么做:(

编辑#1

尝试循环进行拆分,但我遇到了问题:PdfFileWriter 制作 3 个文件,其中一个是一页,第二个是两个,第三个是三个。我在以下代码中的错误在哪里:

抱歉英语不好。

编辑#2

根据 Paul Rooney 的回答,我的解决方案:

功能一切正常,但有点困难。

0 投票
2 回答
8540 浏览

python - 如何使用 Python 从 PDF 中删除文本

我正在创建一个 python 脚本来编辑 PDF 中的文本。

我有这个 Python 代码,它允许我将文本添加到 PDF 文件的特定位置。

我的问题:我想用我的自定义文本替换原始 PDF 特定位置的文本。一种写空白字符的方法可以解决问题,但我找不到任何这样做的东西。

PS.:它必须是 Python 代码,因为稍后我需要将其部署为.exe文件,而我只知道如何使用 Python 代码来做到这一点。

0 投票
1 回答
357 浏览

python - 使用 Python 拼版 PDF

我正在尝试将 pdf 的第一页和第二页强加到第 1 页。第一页将在第二页之上,强加在第一页上。

问题是页面没有修剪或合并。最后一页强加于倒数第二个,就是这样。

0 投票
0 回答
1884 浏览

python - PyPDF2.utils.PdfReadError:在指定位置找不到外部参照表

在创建 Django 迁移并添加了文件字段的验证后,我遇到了一个问题。我的模型是:

#

在我向模型中添加验证器之前

我尝试按照此处所述更改测试文件: PdfFileReader:PdfReadError:无法在指定位置找到外部参照表 但是,这对我没有帮助....有关此异常的更多变体我在 Internet 上没有看到。我将不胜感激任何帮助

0 投票
1 回答
1177 浏览

python-3.x - PyPDF2 仅返回某些文件的空行

我正在编写一个脚本,该脚本“读取”PDF 文件,然后自动重命名它从字典中识别的文件。然而,PyPDF2 只为某些 PDF 返回空行,而对其他 PDF 工作正常。读取文件的代码:

它确实获得了正确的页数,因此它能够打开 PDF。

如果我用 repr(text) 替换它不读取的文件的 print(text),我会得到类似的东西:

奇怪的是,当我使用 Adob​​e 增强 (OCR) 文件时,脚本的性能稍差。它识别了 800 个文件中的 140 个,仅增强了 110 个。

PDF 是机器可读/可搜索的,因为我可以将文本复制/粘贴到记事本。我用“pdfminer”测试了一些文件,它确实显示了一些文本,但也引发了很多错误。如果可能的话,我喜欢继续使用 PyPDF2。

我正在使用的软件规格:
Windows:10.0.15063
Python:3.6.1
PyPDF:1.26.0
Adob​​e 版本:17.009.20058

有人有什么建议吗?非常感激你的帮助!

0 投票
4 回答
23723 浏览

python - 在python中使用PyPDF2合并pdf文件时找不到EOF标记

当我使用以下代码时

发生了如下事情:

谁能告诉我发生了什么?谢谢

0 投票
1 回答
1170 浏览

python - 使用python查找和识别PDF中的流

我已经尝试了大约一周的时间来自动从 pdf 中提取图像。不幸的是,我在这里找到的答案没有帮助。我已经看到使用 pypdf2 对同一代码进行多种变体,所有变体都包含['/XObject']在其中,这导致KeyError.

我正在寻找的似乎隐藏在流中,我在 's 的字典中找不到pypdf2(即使在递归探索整个结构后,调用.getObject()我能找到的每个间接对象)。

使用pypdf2我已经从 pdf 中写出一页并使用 , 打开它Notepad++,以找到一些带有/FlateDecode过滤器的流。

pdfrw稍微有帮助,让我可以PdfReader(path).pages[page].Contents.stream用来获取A流(不知道如何获取其他流)。

使用zlib,我将其解压缩,并得到以下内容:

(它还包含很多浮点数,正负都有)

据我BDC所知,与ghostscript有关。

此时我放弃了,决定寻求帮助。

是否有python工具至少可以提取所有流(并识别FlateDecode标签?)

有没有办法让我识别其中隐藏的内容?我期望某些图像格式的开始标签,这显然不是。如何进一步解析此结果以找到可能隐藏在其中的任何图像?

我正在寻找可以应用于任何正确显示的 PDF 的东西。一些工具可以进一步解析,或者至少可以帮助我理解流,甚至是可以帮助我理解正在发生的事情的参考。

编辑:正如帕特里克所说,我似乎在叫错树。xObjects我去了流,因为在打开 PDFNotepad++或运行用于解析 PDF 的各种 python 脚本时找不到任何内容。我设法找到了我怀疑的图像,没有xObject标签,但看起来像一个流标签 - 尽管信息没有被压缩。

0 投票
1 回答
523 浏览

python - PyPDF2 挂起处理

我正在使用 PyPDF2 处理多个 pdf 文件,但我的脚本挂在某个地方。我在控制台中看到的只是一些“与偏移量在同一行上的 startxref”,我正确的是一个警告,所以它仍然应该转到 finally 块并返回一个空字符串。

难道我做错了什么?