方法:python-pdfkit将网页(JS生成)转换为PDF

时间:2014-09-10 04:47:49

标签: python django python-2.7 django-views pdfkit

views.py

def download_as_pdf(request):
    # some stuff/function call to get updated(with data and JS) template and render it

    return render(request, temp)

def download(request):
    import pdfkit
    pdfkit.from_url('/download/', 'out.pdf', options={'ignore-load-errors': None})
    return HttpResponse('DONE')

urls.py

url(r'^download/', views.download_as_pdf, name="download_pdf")

我想在pdf中打印/download/ url的所有内容(一些图表(JS生成 - flotcharts))。如果我把这两行

import pdfkit
pdfkit.from_url('/download/', 'out.pdf', options={'ignore-load-errors': None})

download_as_pdf视图中,它不会在pdf中打印任何内容(pdf下载虽然但是空的) (我认为因为模板渲染发生在这些语句之后,这就是为什么??)

我应该如何进行pdf中的prit图(我可以通过线程解决这个问题吗?怎么做?)或任何其他方法

1 个答案:

答案 0 :(得分:1)

这可能是因为pdf在加载整个javascript之前呈现。如果你引入了javascript延迟,它将会起作用。

 options = {
    'javascript-delay':'5000'
           }