這篇文章給大家分享的是有關(guān)python如何輸出pdf文檔的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。
創(chuàng)新互聯(lián)是一家專業(yè)提供響水企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、H5技術(shù)、小程序制作等業(yè)務(wù)。10年已為響水眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。python導(dǎo)出pdf,參考諸多資料,發(fā)現(xiàn)pdfkit是效果比較好的。
故下載后進(jìn)行了實(shí)現(xiàn),多次失敗后終于成功了,現(xiàn)將其中經(jīng)驗(yàn)總結(jié)如下:
""" 需要安裝pdfkit,另外需要安裝可執(zhí)行文件wkhtmltopdf.exe, pdfkit核心命令是調(diào)用wkhtmltopdf.exe實(shí)現(xiàn)轉(zhuǎn)pdf 有三個(gè)接口: pdfkit.from_url pdfkit.from_string pdfkit.from_file 需要注意的是,pdfkit主要是用來(lái)將html轉(zhuǎn)pdf,所以文件也是html文件或者純文本文件,其他文件可能失敗。 需要用pdfkit.configuration(wkhtmltopdf=path_wk)來(lái)說(shuō)明wkhtmltopdf.exe的安裝位置,否則會(huì)找不到 options來(lái)約定紙張大小,屬性'encoding'約定編碼,以防亂碼 """ get_cursor = getcursor.GetCursor() conn = get_cursor.get_native_conn() cursor = conn.cursor() sql = 'select * from lease_contract where id = 1' cursor.execute(sql) fetchall = cursor.fetchall() path_wk = r'C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe' config = pdfkit.configuration(wkhtmltopdf=path_wk) # 用options來(lái)約定編碼格式,以防亂碼 options = { 'encoding': 'utf-8' } for data in fetchall: with open('D:\\testsave.docx', 'w', encoding='utf-8')as f: f.write(data[13]) with open('D:\\testsave.docx', 'r', encoding='utf-8')as f: pdfkit.from_file(f, 'D:\\testsave.pdf', configuration=config, options=options) pdfkit.from_string(data[13], 'D:\\test.pdf', configuration=config, options=options)
這是我個(gè)人試驗(yàn)的代碼,效果如下。簡(jiǎn)單記錄,實(shí)為興趣。
感謝各位的閱讀!關(guān)于“python如何輸出pdf文檔”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!