python html转pdf

import pdfkit  # 需要pip安装
import os


class HtmlToPdf(object):

    def __init__(self, file, *, html='', margin=('0.75in', '0.75in', '0.5in', '0.75in')):
        self.html = html
        self.file = file
        self.options = {
                'margin-top': margin[0],
                'margin-right': margin[1],
                'margin-bottom': margin[2],
                'margin-left': margin[3],
        }

    def set_html(self, html):
        self.html = html

    def create(self):  # 新建文件
        try:
            folder = os.path.dirname(self.file)
            if not os.path.exists(folder):
                os.makedirs(folder)
            pdfkit.from_string(self.html, self.file, options=self.options)
        except Exception as e:
            return False
        return True


if __name__ == '__main__':
    html_to_pdf = HtmlToPdf(r'/home/www/test.pdf')
    html_to_pdf.set_html('<html><body><b>test</b></body></html>')
    html_to_pdf.create()
原文地址:https://www.cnblogs.com/lab-zj/p/14078080.html