forked from ghostmkg/programming-language
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPDFMerger.py
30 lines (26 loc) · 1 KB
/
PDFMerger.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#! python3
# combinePdfs.py - Combines all the PDFs in the current working directory into a single PDF
# USAGE : open terminal and go to the folder that has all the pdfs there and type : python3 PDFMerger.py
import PyPDF2, os
# get all the PDF filenames
pdfFiles = []
for filename in os.listdir('.'):
if filename.endswith('.pdf'):
pdfFiles.append(filename)
# we alphabetize the filenames
pdfFiles.sort(key=str.lower)
print(pdfFiles)
pdfWriter = PyPDF2.PdfFileWriter()
# loop through all the PDF files
for filename in pdfFiles:
pdfFileObj = open(filename, 'rb')
pdfReader = PyPDF2.PdfFileReader(pdfFileObj)
if pdfReader.isEncrypted == True : pdfReader.decrypt('rosebud')
# loop through all the pages (except the first) and add them
for pageNum in range(1, pdfReader.numPages):
pageObj = pdfReader.getPage(pageNum)
pdfWriter.addPage(pageObj)
# Save the resulting PDF to a file
pdfOutput = open('your_merged_pdf_name_here.pdf', 'wb')
pdfWriter.write(pdfOutput)
pdfOutput.close()