当前位置: 首页>>代码示例>>Python>>正文


Python pdfkit.from_string方法代码示例

本文整理汇总了Python中pdfkit.from_string方法的典型用法代码示例。如果您正苦于以下问题:Python pdfkit.from_string方法的具体用法?Python pdfkit.from_string怎么用?Python pdfkit.from_string使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在pdfkit的用法示例。


在下文中一共展示了pdfkit.from_string方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: download

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def download():
    read_password = current_app.config.get('READ_PASSWORD')
    if not read_password or session.get('read_password') == read_password:
        input_filename = 'resume.md'
        output_filename = 'resume.pdf'

        with open(input_filename, 'r') as stream:
            html_text = markdown(stream.read(), output_format='html4')
        # render the html template
        output = render_template('pdf_template.html', yue_css=yue_css,
                                 title=current_app.config.get('TITLE'),
                                 sub_title=current_app.config.get('SUB_TITLE'),
                                 content=html_text)

        # generate pdf file
        pdfkit.from_string(output, output_filename, options=current_app.config.get('PDF_OPTIONS'), )

        return send_from_directory(current_app.config.get('UPLOAD_FOLDER'),
                                   'resume.pdf', as_attachment=True)
    else:
        return redirect(url_for("resume")) 
开发者ID:shinux,项目名称:Deerlet,代码行数:23,代码来源:main.py

示例2: to_pdf

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def to_pdf(title: str, markdown_source: str) -> bytes:
        html_style = MarkdownToPDF.css()
        html_body = markdown2.markdown(markdown_source)
        html = f"""
        <html>
        <head>
            <meta charset="utf-8">
            <title>{title}</title>
            <style>
                {html_style}
            </style>
        </head>
        <body class="markdown-body">
            {html_body}
        </body>
        </html>
        """
        return pdfkit.from_string(html, False, options={"quiet": ""}) 
开发者ID:codeforpdx,项目名称:recordexpungPDX,代码行数:20,代码来源:markdown_to_pdf.py

示例3: get_xs_detail

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def get_xs_detail(href, title, path):
    url = xzl+href
    print('开始采集' + title + '的详情, 章节地址为: ' + url + '\n')
    text_maker = ht.HTML2Text()
    response = close_session().get(url=url, headers=headers)
    selector = Selector(text=response.text)
    html = selector.css(u'.cata-book-content').extract_first()
    file_name = title
    if markdown:
        md = text_maker.handle(html)
        with open(path + file_name + '.md', 'w') as f:
            f.write(md)
    else:
        if not xs_pdf:
            # 在html中加入编码, 否则中文会乱码
            html = "<html><head><meta charset='utf-8'></head> " + html + "</html>"
            pdfkit.from_string(html, path + file_name + '.pdf')
        else:
            return html


# 采集专栏列表 
开发者ID:iizvv,项目名称:xzl,代码行数:24,代码来源:xzl.py

示例4: get_zl_detail

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def get_zl_detail(url, path, name):
    response = close_session().get(url=url, headers=headers)
    selector = Selector(text=response.text)
    text_maker = ht.HTML2Text()
    create_time = selector.css(u'.time abbr::attr(title)').extract_first()
    html = selector.css(u'.xzl-topic-body-content').extract_first()
    file_name = name
    if hasTime:
        file_name = create_time+' '+name
    if markdown:
        md = text_maker.handle(html)
        with open(path + file_name + '.md', 'w') as f:
            f.write(md)
    else:
        # 在html中加入编码, 否则中文会乱码
        html = "<html><head><meta charset='utf-8'></head> " + html + "</html>"
        pdfkit.from_string(html, path + file_name + '.pdf')


# 关闭多余连接 
开发者ID:iizvv,项目名称:xzl,代码行数:22,代码来源:xzl.py

示例5: download_pdf

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def download_pdf(data: pd.DataFrame, file_name='output'):
    data_html = data.to_html(index=False)
    try:
        data_pdf = pdf.from_string(data_html, False)
    except OSError:
        env = Environment(loader=FileSystemLoader(settings.PROJECT_DIR('templates')))
        template = env.get_template('pdf_export.html')
        template_vars = {"title": file_name.capitalize(),
                         "table": data_html}
        data_pdf = HTML(string=template.render(template_vars)).write_pdf()
    response = HttpResponse(content_type='application/pdf')
    response['Content-Disposition'] = 'attachment; filename="{}.{}"'.format(file_name, 'pdf')
    response.write(data_pdf)
    return response 
开发者ID:LexPredict,项目名称:lexpredict-contraxsuite,代码行数:16,代码来源:utils.py

示例6: html_to_pdf

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def html_to_pdf(input, output, type='string'):
    """Convert HTML/webpage to PDF. For linux, install: sudo apt-get install wkhtmltopdf.

    Args:
        input (str): HTML Text, URL or file.
        output (str): Output file (.pdf).
        type (str): Types can be 'string', 'url' or 'file'.

    """
    if type == 'url':
        pdfkit.from_url(input, output)
    elif type == 'file':
        pdfkit.from_file(input, output)
    else:
        pdfkit.from_string(input, output) 
开发者ID:lucasayres,项目名称:python-tools,代码行数:17,代码来源:html_to_pdf.py

示例7: main

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def main(input_paths_str, output_path):

    # lee los htmls a convertir en PDF
    input_paths = input_paths_str.split(",")
    htmls = []
    for input_path in input_paths:
        with open(input_path) as input_file:
            htmls.append(markdown2.markdown(
                input_file.read(),
                extras=["fenced_code", "codehilite", "admonition"]))
    print("Hay {} documentos".format(len(htmls)))

    # guarda html
    with open(output_path.replace(".pdf", ".html"), "wb") as output_html:

        # aplica el estilo al principio
        html = "\n".join(htmls)
        html_with_style = """
        <link rel="stylesheet" href="pdf.css" type="text/css"/>
        """ + html

        # escribe el html
        output_html.write(html_with_style.encode("utf-8"))
        shutil.copyfile(
            "docs/css/pdf.css",
            os.path.join(os.path.dirname(output_path), "pdf.css")
        )

    # guarda pdf
    pdfkit.from_string(html, output_path, options={"encoding": "utf8"},
                       css="docs/css/pdf.css") 
开发者ID:datosgobar,项目名称:portal-andino,代码行数:33,代码来源:md2pdf.py

示例8: render_to_pdf_response_pdfkit

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def render_to_pdf_response_pdfkit(template_name, context_dict, css_files=None):
    """Render to a PDF response using pdfkit

    `context_dict` is expected to be generated by htk.view_helpers.wrap_data

    PyPI: https://pypi.python.org/pypi/pdfkit
    Installation: https://github.com/JazzCore/python-pdfkit/wiki/Using-wkhtmltopdf-without-X-server

    Outstanding Issues:
    - 
    """
    import pdfkit
    html = generate_html_from_template(template_name, context_dict)
    base_url = context_dict['request']['base_uri']
    #html = rewrite_relative_urls_as_absolute(html, base_url)
    options = {
        'page-size' : 'Letter',
        'orientation' : 'Portrait',
        'margin-top' : '0.75in',
        'margin-bottom' : '0.75in',
        'margin-left' : '0.50in',
        'margin-right' : '0.50in',
        'encoding' : 'UTF-8',
        #'print_media_type' : False,
        #'title' : context_dict.get('title', 'PDF'),
    }
    pdf = pdfkit.from_string(html.encode('utf-8'), False, options=options, css=css_files)
    if pdf:
        response = HttpResponse(pdf, content_type='application/pdf')
    else:
        response = HttpResponseServerError('Error generating PDF file')
    return response 
开发者ID:hacktoolkit,项目名称:django-htk,代码行数:34,代码来源:pdf_utils.py

示例9: save_pdf

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def save_pdf(self, html):
        chooser = Gtk.FileChooserDialog("Export PDF", None, Gtk.FileChooserAction.SAVE,
                                        (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
                                         Gtk.STOCK_OK, Gtk.ResponseType.OK))
        self.set_file_chooser_path(chooser)
        pdf_filter = Gtk.FileFilter()
        pdf_filter.add_pattern("*.pdf")
        pdf_filter.set_name("PDF Files")
        chooser.add_filter(pdf_filter)
        chooser.set_do_overwrite_confirmation(True)
        response = chooser.run()
        if response == Gtk.ResponseType.OK:
            file_name = chooser.get_filename()
            if not file_name.endswith(".pdf"):
                file_name += ".pdf"
            try:
                pdfkit.from_string(html, file_name, options= {'quiet': '', 'page-size': 'Letter',
                    'margin-top': '0.75in',
                    'margin-right': '0.75in',
                    'margin-bottom': '0.75in',
                    'margin-left': '0.75in',
                    'encoding': "UTF-8",
                    'javascript-delay' : '550',
                    'no-outline': None})
            except:
                try:
                    # Failed so try with no options
                    pdfkit.from_string(html, file_name)
                except:
                    # Pdf Export failed, show warning message
                    if not self.pdf_error_warning:
                        self.pdf_error_warning = True
                        print("\nRemarkable Error:\tPDF Export Failed!!")

                    pdf_fail_dialog = Gtk.MessageDialog(self, 0, Gtk.MessageType.ERROR,
                            Gtk.ButtonsType.CANCEL, "PDF EXPORT FAILED")
                    pdf_fail_dialog.format_secondary_text(
                            "File export to PDF was unsuccessful.")
                    pdf_fail_dialog.run()
                    pdf_fail_dialog.destroy()
        elif response == Gtk.ResponseType.CANCEL:
            pass

        chooser.destroy()
        self.window.set_sensitive(True) 
开发者ID:jamiemcg,项目名称:Remarkable,代码行数:47,代码来源:RemarkableWindow.py

示例10: get_xs

# 需要导入模块: import pdfkit [as 别名]
# 或者: from pdfkit import from_string [as 别名]
def get_xs(href, is_all=False):
    url = xzl + href + '#a4'
    print('开始采集小书信息,小书地址为: ' + url + '\n')
    xzl_path = ''
    if is_all:
        xzl_path = '小专栏/'
    response = close_session().get(url=url, headers=headers)
    selector = Selector(text=response.text)
    chapter = selector.css(u'.book-cata-item').extract()
    xs_title = selector.css(u'.bannerMsg .title ::text').extract_first()
    html = ''
    if xs_pdf:
        html = '<div>' + selector.css(u'.dot-list').extract_first() + '</div>'
    for idx, c in enumerate(chapter):
        selector = Selector(text=c)
        items = selector.css(u'.cata-sm-item').extract()
        z_title = selector.css(u'a::text').extract_first()
        z_href = selector.css(u'a::attr(href)').extract_first()
        path = os.path.join(os.path.expanduser("~"), 'Desktop')+'/'+xzl_path+xs_title+'/'+z_title+'/'
        if xs_pdf:
            path = os.path.join(os.path.expanduser("~"), 'Desktop')+'/'+xzl_path+xs_title+'/'
        else:
            print(xs_title + '共%d章, 正在创建存储目录\n' % len(chapter))
            print('文件存储位置: ' + path + '\n')
        if not os.path.exists(path):
            os.makedirs(path)
            print('文件夹创建成功\n')
        html += get_xs_detail(z_href, z_title, path)
        for item in items:
            selector = Selector(text=item)
            j_title = selector.css(u'.cata-sm-item a::text').extract_first()
            j_href = selector.css(u'.cata-sm-item a::attr(href)').extract_first()
            html += get_xs_detail(j_href, j_title, path)
            time.sleep(seconds)
        time.sleep(seconds)
    if xs_pdf:
        # 在html中加入编码, 否则中文会乱码
        html = "<html><head><meta charset='utf-8'></head> " + html + "</html>"
        pdfkit.from_string(html, path+xs_title+'.pdf')
    print('小书:' + xs_title + '的文章已采集完成\n')
    print('我们应该尊重每一位作者的付出, 请不要随意传播下载后的文件\n')


# 采集小书章节详情 
开发者ID:iizvv,项目名称:xzl,代码行数:46,代码来源:xzl.py


注:本文中的pdfkit.from_string方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。