2016-03-23 18 views
0

1)一部のページを解析して情報を取得します。 2)情報を分離しにくいので、htmlページにインストールし、カスタムCSSで美しくします。 3)次に私はそれをpdfに変換して顧客に提供しようとします。djangoの動的HTMLページをpdfに変換するにはどうすればよいですか?

しかし、すべてのpdf-convectorsは、特定のURLまたはファイルなどを要求します。例:

def parse(request): 
     done = csrf(request) 
     if request.POST: 
      USERNAME = request.POST.get('logins', '') 
      PASSWORD = request.POST.get('password', '') 
      dialogue_url = request.POST.get('links', '') 
      total_pages = int(request.POST.get('numbers', '')) 
      news = [] 
      news.extend(parse_one(USERNAME, PASSWORD, dialogue_url, total_pages)) 
      contex = { 
         "news" : news, 
        } 
      done.update(contex) 

     pageclan = render(request, 'marketing/parser.html', done) 

     # create an API client instance 
     client = pdfcrowd.Client(*** ***) 

     # convert a web page and store the generated PDF to a variable. That is doesn't work. Convertor doesn't support such url. 
     pdf = client.convertURI('pageclan') 

     # set HTTP response headers 
     response = HttpResponse(content_type="application/pdf") 
     response["Cache-Control"] = "max-age=0" 
     response["Accept-Ranges"] = "none" 
     response["Content-Disposition"] = "attachment; filename=jivo_log.pdf" 

     # send the generated PDF 
     response.write(pdf) 
     return response 

正常に動作するツールはありますか? PDFCrowd Python API documentationから

答えて

0

pdf = client.convertHtml("<head></head><body>My HTML Layout</body>")

あなたがするようにコードを変更することができますことを意味します

また、だけではなく、convertURI()convertHtml()方法を使用し、生のHTMLコードを変換することができますレンダリングされたページ(HTML文字列)でconvertHtmlメソッドを使用してください:

pdf = client.convertHtml(pageclan.content) 
+0

'のHttpResponse' オブジェクトには属性 'エンコード' のhtml = html.encode( 'UTF-8')はい、あなただけの 'content'を使用する必要が@SergeyBakotinそれはUTF-8か何か –

+0

を求めるようですがありません。更新された回答をご覧ください。 – Selcuk

関連する問題