簡體   English   中英

Python PyPDF2合並文檔

[英]Python PyPDF2 Combine Docs

我正在嘗試獲取兩個PDF文檔,從doc1中刪除第一頁,並從doc2中添加第一頁。 我認為我的代碼大部分位於所需的位置,但是我收到“ ValueError:不完整的格式”。 這是我的代碼,它給我的錯誤是倒數第三行。

import os, shutil, sys, PyPDF2
from PyPDF2 import PdfFileWriter, PdfFileReader

origList = list()
for root, dirs, files in os.walk(r'C:\Users\User1\Desktop\pytest\orig'):
    for file in files:
            origList.append(file)
print "Original PDF list:"
print origList

stampList = list()
for root, dirs, files in os.walk(r'C:\Users\User1\Desktop\pytest\stamp'):
    for file in files:
            stampList.append(file)
print "Stamped PDF List:"
print stampList

oX = 0
output = PdfFileWriter()
for document in origList:
    file1 = PdfFileReader(open(r'C:\Users\User1\Desktop\pytest\orig\%s' %origList[oX], "rb"))
    file2 = PdfFileReader(open(r'C:\Users\User1\Desktop\pytest\stamp\%s' %stampList[oX], "rb"))
    file1.decrypt("")
    curFile = origList[oX]
    output.addPage(file2.getPage(0))
    file2Pages = file2.getNumPages()
    file2Counter = 1
    while file2Counter <= file2Pages:
        output.addPage(file1.getPage(file2Counter))
        file2Counter = file2Counter + 1
    outputStream = file(r'C:\Users\User1\Desktop\pytest\output\%' %curFile, "wb")
    output.write(outputStream)
    oX = oX + 1

錯誤所在的行是:

outputStream = file(r'C:\Users\User1\Desktop\pytest\output\%' %curFile, "wb")

我按照模塊提供的示例進行操作,我認為那是應該如何編寫的。

在出現錯誤的那一行,您缺少格式說明符,即

outputStream = file(r'C:\Users\User1\Desktop\pytest\output\%' %curFile, "wb")
                                                            ^
         # what type are we formatting? Need to add an 's' here for 'string'

與上一行比較...

file1 = PdfFileReader(open(r'C:\Users\User1\Desktop\pytest\orig\%s' %origList[oX], "rb"))
                                                                 ^
                              # the output line is missing this 's'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM