我正在使用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进行全新安装并得到同样的错误。
有什么奇怪的是merger.py在我的XP安装和Win7之间有很大不同,但是我找不到对早期版本的PyPDF2的引用,我不记得我从哪里下载了那个版本,尽管我做了知道它是在2012年12月18日。从那时我可以看到PyPDF2没有更新。
Win7上的安装使用标准的'python setup.py build'然后'install'。
有什么想法吗?
答案 0 :(得分:-1)
尝试导入io模块,然后使用方法FileIO()
创建流示例:
import io
.
.
.
.
outputStream = io.FileIO('c:\example.pdf', 'wb')