Jan-12-2022, 06:41 PM
(This post was last modified: Jan-12-2022, 06:42 PM by BashBedlam.)
First off, there's no page zero so your first entry should start with a one. Secondly, I may have misunderstood your intended outcome. Try this and see if it's more what you had in mind.
from PyPDF2 import PdfFileReader, PdfFileWriter pdf_file_path = 'document.pdf' file_base_name = pdf_file_path.replace('.pdf', '') pdf = PdfFileReader(pdf_file_path) with open ('page values.csv', 'r') as page_values_file : page_values_file.readline () # dump the header for line in page_values_file : page_values = line.strip ().split (',') setpage = int (page_values [0]) startpage = int (page_values [1]) endpage = int (page_values [2]) pdfWriter = PdfFileWriter() for page_num in range(startpage,endpage): pdfWriter.addPage(pdf.getPage(page_num)) with open("%(n)s_subset_%(b)s.pdf" % {'n': format(file_base_name), 'b': setpage }, 'wb') as f: pdfWriter.write(f)