使用 Python 将 HTML 转换为 PDF 文件

我们大多数人可能知道,有许多网站不允许用户以 PDF 格式文件下载网站内容。相反,他们要么要求他们购买其服务的高级版本,要么不提供 PDF 文件形式的下载服务。

然而,像 Python 这样的编程语言提供了 PDFKit 模块来生成 PDF 文件。在下面的教程中,我们将了解如何借助 Python 编程语言中的 PDFKit 模块将 HTML 转换为 PDF 文件。

了解 Python PDFKit 模块

Python 提供了各种生成 PDF 文件的方法;然而, PDFKit 是一些最好的方法之一。 pdfKit 作为 wkhtmltopdf 工具的包装器,允许程序员在 Webkit 的帮助下将 HTML 文件转换为 PDF 格式。它将 HTML 渲染成具有不同图像格式、HTML 表单和其他复杂可打印文档的 PDF。

如何安装 Python PDFKit 模块?

为了安装 Python 模块,我们需要“ pip ”,这是一个管理从可信公共存储库中安装模块所需的包的框架。一旦我们有了“ pip ”,我们就可以使用来自 Windows 命令提示符(CMD)或终端的命令安装 PDFKit 模块,如下所示:

语法:


$ pip install pdfkit

现在,我们要安装 PDFKit 模块的依赖项,即 wkhtmltopdf 工具。

对于 Ubuntu/Debian:

键入以下命令:

命令:


$ sudo apt-get install wkhtmltopdf

对于窗户:

第一步:我们可以从以下链接下载 wkhtmltopdf 工具:

https://wkhtmltopdf.org/downloads.html

步骤 2: 将 PATH 变量设置为环境变量中的二进制文件夹。

验证安装

一旦模块安装完成,我们可以通过创建一个空的 Python 程序文件并编写一个 import 语句来验证它,如下所示:

文件:验证. py


import pdfkit

现在,保存上述文件,并在终端中使用以下命令执行它:

语法:


$ python test_file.py

如果上述 Python 程序文件没有返回任何错误,则模块安装正确。但是,在出现异常的情况下,请尝试重新安装该模块,并且还建议参考该模块的官方文档。

现在,让我们开始使用 Python 中的 PDFKit 。

使用 Python 中的 PDFKit

本节将通过不同的示例演示如何使用 Python 编程语言中的 PDFKit 模块将 HTML 转换为 PDF 格式的文件。

Python PDFKit 模块允许程序员使用 from_file() 函数将本地 HTML 文件转换为 PDF 格式。让我们考虑下面的例子来证明这一点:

示例:


# importing the required module
import pdfkit

# configuring pdfkit to point to our installation of wkhtmltopdf
config = pdfkit.configuration(wkhtmltopdf = r"C:\\Program Files\\wkhtmltopdf\\bin\\wkhtmltopdf.exe")

# converting html file to pdf file
pdfkit.from_file('sample.html', 'output.pdf', configuration = config)

输出:

说明:

在上面的代码片段中,我们已经导入了所需的模块。然后,我们将变量定义为配置,使用配置()函数将地址存储到 wkhtmltopdf 工具的执行文件中。然后,我们使用了 PDFKit 模块的 from_file() 功能,将参数指定为 html 文件的地址、要存储的 PDF 文件的位置和配置。

因此,我们已经成功地将本地 HTML 文件转换为 PDF 文件。

借助 from_url() 功能,我们还可以使用 Python PDFKit 模块将网站网址转换为 PDF 文件。让我们考虑下面的例子来证明这一点:

示例:


import pdfkit

# configuring pdfkit to point to our installation of wkhtmltopdf
config = pdfkit.configuration(wkhtmltopdf = r"C:\\Program Files\\wkhtmltopdf\\bin\\wkhtmltopdf.exe")

# converting url to pdf file
pdfkit.from_url('https://www.javatpoint.com/tic-tac-toe-in-python', 'output2.pdf', configuration = config)

输出:

说明:

在上面的代码片段中,我们已经导入了所需的模块。然后,我们将变量定义为配置,使用配置()函数将地址存储到 wkhtmltopdf 工具的执行文件中。然后,我们使用了 PDFKit 模块的 from_url() 功能,将参数指定为 url、要存储的 PDF 文件的位置和配置。

因此,我们已经成功地将网址转换为 PDF 文件。

此外, PDFKit 模块允许程序员使用 from_url() 功能将字符串存储到 PDF 文件中。让我们考虑下面的例子来说明这一点:

示例:


# importing the required module
import pdfkit

# configuring pdfkit to point to our installation of wkhtmltopdf
config = pdfkit.configuration(wkhtmltopdf = r"C:\\Program Files\\wkhtmltopdf\\bin\\wkhtmltopdf.exe")

my_string = """
    <html>
    <head>
    <body>
        <div class = "container">
            <h1>STRING TO PDF</h1>
            <p>This is my sample string that I wanted to stored in a PDF file</p>
        </div>
    </body>
    </head>
    </html>
"""

# storing string to pdf file
pdfkit.from_string(my_string, 'output3.pdf', configuration = config)

输出:

说明:

在上面的代码片段中,我们已经导入了所需的模块。然后,我们将变量定义为配置,使用配置()函数将地址存储到 wkhtmltopdf 工具的执行文件中。然后,我们使用了 PDFKit 模块的 from_string() 功能,将参数指定为字符串变量、要存储的 PDF 文件的位置和配置。

结果,我们成功地将字符串存储到了一个 PDF 文件中。


原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/305165.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2025-01-01 11:06
下一篇 2025-01-01 11:06

相关推荐

  • Python中引入上一级目录中函数

    Python中经常需要调用其他文件夹中的模块或函数,其中一个常见的操作是引入上一级目录中的函数。在此,我们将从多个角度详细解释如何在Python中引入上一级目录的函数。 一、加入环…

    编程 2025-04-29
  • Python列表中负数的个数

    Python列表是一个有序的集合,可以存储多个不同类型的元素。而负数是指小于0的整数。在Python列表中,我们想要找到负数的个数,可以通过以下几个方面进行实现。 一、使用循环遍历…

    编程 2025-04-29
  • Python计算阳历日期对应周几

    本文介绍如何通过Python计算任意阳历日期对应周几。 一、获取日期 获取日期可以通过Python内置的模块datetime实现,示例代码如下: from datetime imp…

    编程 2025-04-29
  • Python周杰伦代码用法介绍

    本文将从多个方面对Python周杰伦代码进行详细的阐述。 一、代码介绍 from urllib.request import urlopen from bs4 import Bea…

    编程 2025-04-29
  • 如何查看Anaconda中Python路径

    对Anaconda中Python路径即conda环境的查看进行详细的阐述。 一、使用命令行查看 1、在Windows系统中,可以使用命令提示符(cmd)或者Anaconda Pro…

    编程 2025-04-29
  • Python清华镜像下载

    Python清华镜像是一个高质量的Python开发资源镜像站,提供了Python及其相关的开发工具、框架和文档的下载服务。本文将从以下几个方面对Python清华镜像下载进行详细的阐…

    编程 2025-04-29
  • Python程序需要编译才能执行

    Python 被广泛应用于数据分析、人工智能、科学计算等领域,它的灵活性和简单易学的性质使得越来越多的人喜欢使用 Python 进行编程。然而,在 Python 中程序执行的方式不…

    编程 2025-04-29
  • python强行终止程序快捷键

    本文将从多个方面对python强行终止程序快捷键进行详细阐述,并提供相应代码示例。 一、Ctrl+C快捷键 Ctrl+C快捷键是在终端中经常用来强行终止运行的程序。当你在终端中运行…

    编程 2025-04-29
  • 蝴蝶优化算法Python版

    蝴蝶优化算法是一种基于仿生学的优化算法,模仿自然界中的蝴蝶进行搜索。它可以应用于多个领域的优化问题,包括数学优化、工程问题、机器学习等。本文将从多个方面对蝴蝶优化算法Python版…

    编程 2025-04-29
  • Python字典去重复工具

    使用Python语言编写字典去重复工具,可帮助用户快速去重复。 一、字典去重复工具的需求 在使用Python编写程序时,我们经常需要处理数据文件,其中包含了大量的重复数据。为了方便…

    编程 2025-04-29

发表回复

登录后才能评论