1. Vamos aprender nessa aula a separar pdfs por páginas de forma dinâmica. Vamos adicionar o código em uma função dentro do módulo que criamos na aula anterior.
  2. Pensando nisso, no arquivo pdf_operations.py vamos criar o código abaixo.
import PyPDF2 as pdf
from PyPDF2 import PdfReader

def fetch_all_pdf_files(parent_folder:str):
    target_files = []
    for path, subdirs, files in os.walk(parent_folder):
        for name in files:
            if name.endswith(".pdf"):
                target_files.append(os.path.join(path,name))
    return target_files

def merge_pdf(list_pdfs, output_filename="files/final_pdf.pdf"):
    merger = PdfMerger()
    with open(output_filename, "wb") as f:
        for file in list_pdfs:
            merger.append(file)
        merger.write(f)

print(fetch_all_pdf_files("files/"))

pdf_list = fetch_all_pdf_files("files/")
merge_pdf(pdf_list)
  1. Para executar o arquivo execute o comando python .\pdf_operations.py

Img1.png

Img2.png