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 get_pdf_upto(pdf_path, start_page:int=0,stop_page:int=0):
    with open(pdf_path, "rb") as f:
        reader = PdfReader(f)
        writer = PdfWriter()
        for page_num in range(start_page, stop_page):
            selected_page = reader.pages[page_num]
            writer.add_page(selected_page)
            filename = os.path.split(pdf_path)[1]
            output_filename = f"files/{filename}_from_{start_page+1}_to_{stop_page+1}.pdf"
        with open(output_filename, "wb") as out:
            writer.write(out)

get_pdf_upto("files/sample.pdf", 1, 2)
  1. Para executar o arquivo execute o comando python .\pdf_operations.py

Img1.png