使用IRONPDF FOR PYTHON

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

更新 2024年九月28日
分享:

本文将讨论如何使用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,使其成为文档操作的强大工具。

  3. PDF 合并和拆分: IronPDF 允许您Merge multiple PDF documents合并到单个文件或将 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

从命令行安装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:输出文本

输出文本

结论

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

通过遵循简单的设置程序,Python开发人员可以快速将IronPDF集成到他们的项目中,彻底改造他们的发票处理工作流程,使从发票中提取数据的过程变得无缝且高效。 使用IronPDF进行数据提取的代码示例可以从详细代码示例. 使用 IronPDF for Python 进行数据提取的完整教程可以在以下网站上找到Python教程使用 C# 提取发票,请访问IronOCR 教程.

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

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

免费 pip 安装 查看许可证 >