2017-11-16 16 views
1

pdfkikを使用して複数のhtmlファイルをpdfに変換しようとしました。これは私のコードです:複数のhtmlファイルをpdfkitを使ってPDFに変換する

from bs4 import BeautifulSoup 
from selenium import webdriver 
import pdfkit 

driver=webdriver.Chrome() 
driver.get('https://www.linkedin.com/in/jaypratappandey/') 
time.sleep(40) 
soup= BeautifulSoup(driver.page_source, 'lxml') 
data=[] 
f=open('htmlfile.html', 'w') 
top=open('tophtmlfile.html', 'w') 

for name in soup.select('.pv-top-card-section__body'): 
    top.write("%s" % name) 

for item in soup.select('.pv-oc.ember-view'): 
    f.write("%s" % item) 


pdfkit.from_file(['tophtmlfile.html', 'htmlfile.html'], 'jayprofile.pdf') 

driver.quit() 

このコードは、次のエラーを与える:

Traceback (most recent call last): 
    File "lkdndata.py", line 23, in <module> 
    pdfkit.from_file(['tophtmlfile.html', 'htmlfile.html'], 'ankurprofile.pdf') 
    File "/usr/local/lib/python3.5/dist-packages/pdfkit/api.py", line 49, in from_file 
    return r.to_pdf(output_path) 
    File "/usr/local/lib/python3.5/dist-packages/pdfkit/pdfkit.py", line 156, in to_pdf 
    raise IOError('wkhtmltopdf reported an error:\n' + stderr) 
OSError: wkhtmltopdf reported an error: 
Error: This version of wkhtmltopdf is build against an unpatched version of QT, and does not support more then one input document. 
Exit with code 1, due to unknown error. 

答えて

0

は、私は、同じエラーが発生しました。おそらくあなたが得ているエラーは、あなたのqtインストールの不一致と、互換性のあるqtバージョンがないためです。 お使いの端末で

wkhtmltopdf 

を実行してみてください、あなたは「機能制限」を見つけることができるかどうかを確認します。

もしそうなら、私の前提は正しいですし、最も安全な方法はソースからコンパイルすることです。

関連する問題