Как включить HTML-файл в документ Пиза xhtml2pdf с Python?

Я новичок в xhtml2pdf с Python, писать HTML-код с Python в удобочитаемом формате, как-то громоздко. Я хочу знать, как включить файл.html в документ Пиза. Вот простой код, в котором я создаю файл PDF:

from xhtml2pdf import pisa   
def main():
    filename = "simplePrint.pdf"    
    # generate content
    xhtml = "<h1 align='center'>Test print</h1>\n"
    xhtml += "<h2>This is printed from within a Python application</h2>\n"
    xhtml += "<p style=\"color:red;\">Coloured red using css</p>\n"          
    pdf = pisa.CreatePDF(xhtml, file(filename, "w"))
if __name__ == "__main__":
    main()

Если код HTML слишком велик, я хочу создать другой модуль, поместите его в файл myHtml.html и включите в третью последнюю строку, например:

pdf = pisa.CreatePDF(myHtml.html, file(filename, "w"))

Как мне дойти до этой проблемы?

1 ответ

Решение

Если я вас правильно понимаю, то, вероятно, вам нужен еще один файл в том же каталоге, что и вышеприведенный код, который называется myHtml.py выглядит так:

html = "<h1 align='center'>Test print</h1>\n"
html += "<h2>This is printed from within a Python application</h2>\n"
html += "<p style=\"color:red;\">Coloured red using css</p>\n"

а затем в коде выше import myHtml в начале.

Тем не менее, я считаю, что было бы лучше, если вы поместите HTML-файл в HTML-файл под названием myTemplate.html например. Тогда вы можете прочитать файл так:

template = open("myTemplate.html")
pdf = pisa.CreatePDF(template.read(), file(filename, "w"))
template.close()
Другие вопросы по тегам