Skip to content

Instantly share code, notes, and snippets.

@bcjarrett
Last active August 8, 2018 18:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bcjarrett/cefa3b2e73c4866dd7d3092e19642619 to your computer and use it in GitHub Desktop.
Save bcjarrett/cefa3b2e73c4866dd7d3092e19642619 to your computer and use it in GitHub Desktop.
Simple Python PDF Merger
import glob
from PyPDF2 import PdfFileMerger
import os
from datetime import datetime
now = datetime.now().isoformat().replace(':', '').replace('-', '').replace('.', '')
def get_pdf_files(dir_):
files = sorted(glob.glob(f'{dir_}\\*.pdf'))
return [file for file in files if not os.path.basename(file).startswith('Result')]
def merge_pdfs(pdf_list):
merger = PdfFileMerger()
for pdf in pdf_list:
merger.append(open(pdf, 'rb'))
with open(f'Result_{now}.pdf', 'wb') as fout:
merger.write(fout)
if __name__ == '__main__':
working_dir = os.path.dirname(os.path.realpath(__file__))
merge_pdfs(get_pdf_files(working_dir))
@bcjarrett
Copy link
Author

Concatenates all PDFs in a folder in alphabetic order. Ignore files that begin with 'Result'.

Requires Python >= 3.6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment