@timka228

Как заполнить PDF на Python?

Есть такая задача: нужно, чтобы каждый месяц скрипт присылал мне отчет pdf файлом. Вот пытаюсь сделать заполнение готового pdf шаблона. Нужно, чтобы создавалась копия этого шаблонного документа, но уже заполненная.
Я попробовал в шаблонном pdf документе в места, куда нужно будет вставлять текст, написать "макросы", типа {date} (на это место в документе вставить дату), {income} (вставить доход за месяц), и так далее. Написал вот такой скрипт с библиотекой PyPDF2, который только читает шаблон:
from PyPDF2 import PdfFileReader

pdf_document = "/root/source/statistics_template.pdf" #шаблон отчета
with open(pdf_document, "rb") as filehandle:  
    pdf = PdfFileReader(filehandle)
    pdf_writer = PdfFileWriter()
   
    info = pdf.getDocumentInfo()
    pages = pdf.getNumPages()
    
    for i in range(pages):
        page = pdf.getPage(i)
        
        page_new_text = page.extractText().replace('{date}', '01.01.2021').replace('{income}', '13 000 000') #чтение текста шаблона, замена макросов на значения

Но что дальше? Как записать переменную page_new_text в текст нового pdf файла?
Или я вообще не так все делаю? Мне просто такая идея пришла, наверное можно и лучше. Прошу помочь, пожалуйста.
  • Вопрос задан
  • 162 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы