2017-11-05 13 views
4

複数のPDFファイルの最初のページのみを取り除き、1つのファイルに結合しようとしています。 (私は1日に150のPDFファイルを受け取り、最初のページは私が必要とする請求書であり、以下の3〜12ページは単なるバックアップではありません)そのため、入力はさまざまなサイズの150のPDFファイルで、 1 150ファイルのそれぞれの最初のページのみを含むPDFファイル。PDFの最初のページのみを選択するpypdf2

私がしたように見えるのは、最初のページ(私が必要とする唯一のページ)以外のすべてのページをマージしたことです。

import PyPDF2, os 

pdfFiles = [] 
for filename in os.listdir('.'): 
    if filename.endswith('.pdf'): 
     pdfFiles.append(filename) 
pdfFiles.sort(key=str.lower) 
pdfWriter = PyPDF2.PdfFileWriter() 

for filename in pdfFiles: 
    pdfFileObj = open(filename, 'rb') 
    pdfReader = PyPDF2.PdfFileReader(pdfFileObj) 

for pageNum in range(1 , pdfReader.numPages): 
    pageObj = pdfReader.getPage(pageNum) 
    pdfWriter.addPage(pageObj) 


pdfOutput = open('CombinedFirstPages.pdf', 'wb') 
pdfWriter.write(pdfOutput) 
pdfOutput.close() 
+0

あなたのPDFファイルを画像形式です

import PyPDF2, os your_target_folder = "" pdf_files = [] for dirpath, _, filenames in os.walk(your_target_folder): for items in filenames: file_full_path = os.path.abspath(os.path.join(dirpath, items)) if file_full_path.lower().endswith(".pdf"): pdf_files.append(file_full_path) else: pass pdf_files.sort(key=str.lower) pdfWriter = PyPDF2.PdfFileWriter() for files_address in pdf_files: pdfFileObj = open(files_address, 'rb') pdfReader = PyPDF2.PdfFileReader(pdfFileObj) pageObj = pdfReader.getPage(0) pdfWriter.addPage(pageObj) with open("CombinedFirstPages.pdf", "wb") as output: pdfWriter.write(output) 

グッドラック..?生のテキスト? – DRPK

+0

私はPDF文書(画像)から情報を取り除いていません。請求書の支払いを承認するために最初のページを印刷するだけです。 –

答えて

0

これを試してみてください。

+0

残念ながら、上記のスクリプトではページがない空のドキュメントが表示されます。 –

+0

@mikehoran:あなたはあなたにpdfファイルをアップロードできますか?私はそれをチェックします... – DRPK

+0

@mikehoran:あなたのpdfファイルの1つまたは2つのサンプルをアップロードしてください... – DRPK

関連する問題