TypeError: объект 'PdfFileWriter' не вызывается - PullRequest
0 голосов
/ 12 июля 2020

Я пытаюсь извлечь определенные c страницы из файла PDF и сохранить их под другим именем. Следуйте приведенным здесь кодам: https://www.youtube.com/watch?v=W6Gt57b3Pp4&t=219s

from PyPDF2 import PdfFileReader, PdfFileWriter
pdf_file_path = "oranges.pdf"
file_base_name = pdf_file_path.replace(".pdf","")

pdf = PdfFileReader(pdf_file_path) #Creating PDF instance
pages = [0,2,4]

pdfwriter = PdfFileWriter() #Creating pdfWriter instance
print

for page_num in pages:
    pdfwriter().addPage(pdf.getPage(page_num))
with open("{0}_subset".format(file_base_name),'wb') as f:
    pdfwriter.write(f)
    f.close

Однако я получаю эту ошибку в строке 12: TypeError: объект 'PdfFileWriter' не вызывается Как мне разрешить эту ошибку?

1 Ответ

0 голосов
/ 12 июля 2020

Вы не можете вызвать вызов метода для объекта, если объект не указывает на метод.

Измените строку pdfwriter().addPage() на pdfwriter.addPage()

from PyPDF2 import PdfFileReader, PdfFileWriter
pdf_file_path = "oranges.pdf"
file_base_name = pdf_file_path.replace(".pdf","")

pdf = PdfFileReader(pdf_file_path) #Creating PDF instance
pages = [0,2,4]

pdfwriter = PdfFileWriter() #Creating pdfWriter instance


for page_num in pages:
    pdfwriter.addPage(pdf.getPage(page_num))

with open("{0}_subset".format(file_base_name),'wb') as f:
    pdfwriter.write(f)
    f.close()
...