使用IRONPDF FOR PYTHON

如何在 Python 中从 PDF 中提取发票数据

发布 2023年九月12日
分享:

在当今快节奏的商业环境中,高效的发票数据提取对于简化财务运作至关重要。从 PDF 文档中提取有价值的发票数据是企业面临的最常见挑战之一。在本文中,我们将探讨如何利用 Python 这种通用而强大的编程语言,自动从 PDF 格式的发票中提取发票日期、金额和发票号码等重要信息。通过利用 Python 强大的库和工具,企业可以大大减少手动数据提取和输入,最大限度地减少错误,并提高管理发票的整体工作效率。加入我们的旅程,了解 Python 如何彻底改变您的发票处理工作流程。

在本文中,我们将讨论如何使用 Python 的 IronPDF 库从发票 PDF 文件中提取文本数据。

如何用 Python 从 PDF 中提取发票数据

1.安装用于从 PDF 发票中提取数据的 Python 库。

2.使用 PdfDocument.FromFile 方法打开 PDF 文件。

3.使用 ExtractAllText 方法提取发票中的所有数据。

4.使用 print 方法打印从发票中提取的所有数据。

5.从发票数据中提取特定数据。

1.IronPDF

IronPDF for Python 是一个强大的 Python 库,是连接 Python 应用程序和 PDF 文档的桥梁。这款多功能工具为开发人员提供了在 Python 项目中轻松创建、操作 PDF 文件并与之交互的手段。以下是使 IronPDF 成为宝贵资产的一些突出功能:

  1. PDF 生成: IronPDF 可从头开始动态生成 PDF 文件,允许开发人员以编程方式创建具有自定义内容、样式和布局的 PDF。

  2. HTML 到 PDF 的转换: 它可以将 HTML 内容(包括网页)转换为高质量的 PDF,同时保留原始 HTML 的布局和样式,这对于生成报告和文档尤其有用。

  3. PDF 编辑: 开发人员可以通过添加、修改或删除文本、图像和交互式元素,轻松编辑现有的 PDF 文件,使其成为文档操作的强大工具。

  4. PDF 合并与分割: IronPDF 允许您将多个 PDF 文档合并为一个文件,或将一个 PDF 分割为多个文件,从而灵活地管理大型 PDF 文件集。

  5. PDF 表单: 它支持创建和填写交互式 PDF 表单,是需要用户输入和收集数据的应用程序的理想选择。

  6. 数字签名: 您可以在 PDF 文档中添加数字签名,确保文件的完整性和真实性,这对法律和安全至关重要。

  7. PDF 数据提取: IronPDF 提供提取功能,以保护 PDF 文件中的信息。

2.设置环境

在 Python 中设置 IronPDF 的环境需要几个步骤,以确保您可以开始有效地使用该库。以下是分步指南:

1.在 PyCharm 中创建一个新的 Python 项目,并创建一个虚拟环境或使用现有的解释器。

2.使用命令行终端安装 IronPDF,在终端中运行以下命令:

 pip install ironpdf

如何用 Python 从 PDF 中提取发票数据:图 1 - 通过命令行安装 IronPDF。

3.使用 IronPDF 从发票中提取数据

在本文的这一部分,我们将了解如何使用 Python 库 IronPDF 从发票格式和输出格式中提取数据。下面的代码将从发票中提取所有数据并打印到控制台中。

示例发票

如何用 Python 从 PDF 中提取发票数据:图 2 - 一个发票示例,包含标准发票元素,如公司、标题、发票号码、细列项目和总额。

from ironpdf import *
pdf = PdfDocument.FromFile("INV_2022_00001.pdf")
all_text = pdf.ExtractAllText()
print(all_text)
PYTHON

上述代码使用 PdfDocument.FromFile 方法加载了名为 "INV_2022_00001.pdf "的特定 PDF 文件。随后,它会从加载的 PDF 文档中提取所有文本内容的数据,并将其存储在变量 all_text 中。最后,使用 print 函数将提取的文本打印到控制台。从本质上讲,这段代码自动完成了从 PDF 文件中提取文本结构化数据和非结构化数据的过程,使其可以在 Python 环境中进行进一步处理或分析。

3.1.输出

如何用 Python 从 PDF 中提取发票数据:图 3 - 输出到控制台的发票文本。

4.从发票中提取特定数据

使用 IronPDF 提取发票数据非常简单,正如我们在上面的示例中所看到的。从 PDF 发票数据中提取发票号码和金额等数据可能是一个棘手的过程,但使用 IronPDF 和 Python 开源库 "re "的帮助就可以实现。下面的代码将从 PDF 发票中提取数据并打印到控制台中。

from ironpdf import *
import re
invoice_number_pattern = r"Invoice\s+(INV/\d{4}/\d{5})"
amount_pattern = r"Total\s+\$\s*([\d,.]+(?:\.\d{2})?)"
pdf = PdfDocument.FromFile("INV_2022_00001.pdf")
all_text = pdf.ExtractAllText()
invoice_number_match = re.search(invoice_number_pattern, all_text)
amount_match = re.search(amount_pattern, all_text)
invoice_number = invoice_number_match.group(1) if invoice_number_match else "Not found"
amount = amount_match.group(1) if amount_match else "Not found"
print('Invoice Number:' + invoice_number + '\n Amount:$' + amount)
PYTHON

本代码片段利用 Python 和 IronPDF 库从 PDF 文档中提取数据。首先,它导入了必要的库,并定义了正则表达式模式,用于识别 PDF 文本内容中的发票号码和总金额。然后,代码加载目标 PDF,提取其所有文本,并继续搜索与定义模式匹配的内容。

如果找到成功匹配的模式,就会为发票号码和金额存储相应的值;否则,就会指定 "未找到"。最后,脚本和输出文件会将提取的发票号码和金额输出打印到控制台,从而提供一种简化的方法,自动从 PDF 文档中提取特定数据,这是各种数据处理和会计应用程序中经常遇到的任务。

4.1.输出

如何用 Python 从 PDF 中提取发票数据:图 4 - 输出文本显示:发票编号:INV/2022/00001,下一行显示 金额:$126.50:$126.50.

5.结论

在当今快节奏的商业环境中,Python 是企业通过从 PDF 发票中自动提取关键数据来简化财务运作的强大盟友。利用 Python 的功能和 IronPDF 库,企业可以在管理发票的会计流程中大大减少手动数据输入、减少错误、节省时间并提高整体生产率。IronPDF 具有多种功能,如 PDF 生成、HTML 到 PDF 转换、PDF 编辑、合并、分割、表单处理、数字签名和精确数据提取,是完成这些任务的强大工具。

通过简单的设置程序,Python 开发人员就能迅速将 IronPDF 集成到他们的项目中,彻底改变他们的发票处理工作流程,使发票数据提取成为一个无缝、高效的过程。使用 IronPDF 提取数据的代码示例如下 *这里***.使用 IronPDF Python 提取数据的完整教程可从以下网站获取 链接使用 C# 提取发票,请访问 *这里***.

< 前一页
如何在 Python 中解析 PDF 文件
下一步 >
如何在Python中将图像转换为PDF

准备开始了吗? 版本: 2024.9 刚刚发布

免费 pip 安装 查看许可证 >