【问题标题】:PyPDF2 throws error when merging (Python3.3/Win7)PyPDF2 合并时抛出错误(Python3.3/Win7)
【发布时间】:2013-02-13 02:23:00
【问题描述】:

我正在使用 PyPDF2 进行 PDF 的简单合并。我在 XP/Python 3.2 上编写了代码,它运行良好。当我将其移至 Win7-64bit/Python 3.3 并使用最新的 PyPDF2 发行版 (https://github.com/knowah/PyPDF2/) 时,将 PDF 附加到合并对象时会引发以下错误:

Traceback (most recent call last):
  File "C:\PDFs\pdfmerge2.py", line 103, in <module>
    count=merge_and_check(l_batch_files)
  File "C:\PDFs\pdfmerge2.py", line 47, in merge_and_check
    merger.append(pf)
  File "C:\Python33\lib\site-packages\PyPDF2\merger.py", line 168, in append
    self.merge(len(self.pages), fileobj, bookmark, pages, import_bookmarks)
  File "C:\Python33\lib\site-packages\PyPDF2\merger.py", line 97, in merge
    elif type(fileobj) == file:
NameError: global name 'file' is not defined

我已经尝试使用 Python 3.2 进行全新安装,但得到了同样的错误。

奇怪的是,merge.py 在我的 XP 安装和 Win7 之间非常不同,但我找不到对 PyPDF2 早期版本的引用,我不记得我从哪里下载了那个版本,虽然我知道知道它是在 2012 年 12 月 18 日。据我所知,从那时到现在,PyPDF2 没有任何更新。

Win7 上的安装使用标准的“python setup.py build”然后“安装”。

有什么想法吗?

【问题讨论】:

  • 如果您将它放在 PyPDF 的错误跟踪器上,这可能会很有用。 PyPDF 的程序员可能想知道这一点。
  • 谢谢 - 我不想假设这是一个缺陷,但我会让他们知道。
  • 我也有这个错误。您找到解决方案了吗?

标签: python pdf pypdf


【解决方案1】:

尝试导入 io 模块,然后使用 FileIO() 方法创建流

示例:

import io
.
.
.
.
outputStream = io.FileIO('c:\example.pdf', 'wb')

【讨论】:

    猜你喜欢
    • 2022-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-16
    • 1970-01-01
    • 2021-03-17
    相关资源
    最近更新 更多