Skip to main content
 首页 » 编程设计

python之方法 : python-pdfkit convert webpage(JS generated) into PDF

2024年08月27日45xing901022

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 图(我可以通过线程解决这个问题吗?如何解决?)或任何其他方法

请您参考如下方法:

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

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