我想不出来 这个函数(类的一部分,用于将internet站点抓取为pdf)用于合并使用pypdf从web页面生成的pdf文件。在
这是方法代码:
def mergePdf(self,mainname,inputlist=0):
"""merging the pdf pages
getting an inputlist to merge or defaults to the class instance self.pdftomerge list"""
from pyPdf import PdfFileWriter, PdfFileReader
self._mergelist = inputlist or self.pdftomerge
self.pdfoutput = PdfFileWriter()
for name in self._mergelist:
print "merging %s into main pdf file: %s" % (name,mainname)
self._filestream = file(name,"rb")
self.pdfinput = PdfFileReader(self._filestream)
for p in self.pdfinput.pages:
self.pdfoutput.addPage(p)
self._filestream.close()
self._pdfstream = file(mainname,"wb")
self._pdfstream.open()
self.pdfoutput.write(self._pdfstream)
self._pdfstream.close()
我一直收到这个错误:
^{pr2}$但当我检查自我状态时,我得到:
<open file 'c:\python27\learn\dive.pdf', mode 'wb' at 0x013B2020>
我做错什么了?在
我很乐意得到任何帮助
我发现了你的问题。你打电话给
file()
是对的。{不要打电话。在您的问题是当您调用
self.pdfoutput.write(self._pdfstream)
时,输入文件仍然需要打开,因此您需要删除self._filestream.close()
行。在编辑:此脚本将触发问题。第一次写入成功,第二次写入失败。在
相关问题 更多 >
编程相关推荐