2016-04-29 6 views
0

Я пытаюсь разбить большой pdf на основе списка имен и списка страниц. Например, имя имеет три страницы, второе - одну, третью - пять страниц и так далее. Я создал следующий скрипт, и он работает некорректно. Например, когда PDF разбивается на первый, правильные три страницы, у второго есть четыре страницы, у них должна быть только одна страница, третья - девять страниц, у нее должно быть пять страниц, и поэтому последний файл pdf должен содержать все страницы стр. Что мне не хватает?python-pypdf split pdf на основе списка диапазонов страниц

for arry, name in zip(pglist, deptNames5): 
    for page in arry: 
     pagenumber = pdfDoc.getPage(page) 
     NewPdf.addPage(pagenumber) 
     with open(name + b'.pdf', 'wb') as f: 
      NewPdf.write(f) 
+0

'NewPdf.addPage (PageNumber)' - вы просто держать добавления страниц там. Вы должны перемотать его после выхода. – taras

ответ

1

Я думаю, что правильный вариант этого кода должен быть

for arry, name in zip(pglist, deptNames5): 
    NewPdf = PdfFileWriter() 
    for page in arry: 
     pagenumber = pdfDoc.getPage(page) 
     NewPdf.addPage(pagenumber) 
    with open(name + b'.pdf', 'wb') as f: 
     NewPdf.write(f)