使用IRONPDF FOR PYTHON

如何在 Python 中從 PDF 中提取發票數據

已更新 2024年9月28日
分享:

本文將討論如何使用 IronPDF for Python 庫從發票 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 的布局和樣式,這對於生成報告和文檔特別有用。

  2. PDF 編輯:開發人員可以輕鬆編輯現有的PDF檔案,通過添加、修改或移除文字、圖片和互動元素,使其成為文件操作的強大工具。

  3. PDF 合併和分割: IronPDF 讓您可以合併多個 PDF 文件成為單一檔案或將 PDF 拆分為多個文件提供靈活性來管理大量的PDF文件。

  4. PDF 表單:它支持創建和填寫互動式 PDF 表單,非常適合需要用戶輸入和數據收集的應用程式。

  5. 數位簽章:您可以在 PDF 文件中添加數位簽章,以確保檔案的完整性和真實性,這對於法律和安全目的至關重要。

  6. PDF數據提取:IronPDF 提供提取功能以保護 PDF 中的信息。

2. 設定環境

在 Python 中設置 IronPDF 的環境需要幾個步驟,以確保您可以有效地開始使用該庫。 以下是逐步指南:

  1. 在 PyCharm 中創建一個新的 Python 專案,並創建一個虛擬環境或使用現有的解釋器。

  2. 在命令行終端中執行以下命令來安裝IronPDF:
 pip install ironpdf

如何在 Python 中從 PDF 提取發票數據,圖 1:從命令列安裝 IronPDF

從命令行安裝IronPDF

3. 使用 IronPDF 從發票中提取數據

本節將展示如何使用 Python 庫 IronPDF 從發票格式中提取數據並輸出格式。 下面的程式碼將從發票中提取所有資料並在控制台中列印出來。

範例發票

如何從 PDF 中提取發票數據(Python),圖 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. 輸出

如何從 PDF 中提取發票數據(Python),圖4:輸出文本

輸出文本

5. 結論

在當今快速變化的商業環境中,Python 作為一個強大的助手,幫助組織透過自動化從 PDF 發票中提取關鍵數據,以簡化其財務運營。 利用 Python 的功能和 IronPDF 庫,企業在處理發票管理的會計流程中,可以顯著減少手動數據輸入、降低錯誤、節省時間,並提高整體生產力。 IronPDF 以其多樣化的功能,例如 PDF 生成、HTML 至 PDF 轉換、PDF 編輯、合併、拆分、表單處理、數位簽名以及精確的數據提取,成為執行這些任務的強大工具。

透過遵循簡單的設置程序,Python 開發人員可以快速將 IronPDF 整合到他們的專案中,革新他們的發票處理工作流程,從發票中提取數據成為順暢且高效的過程。 使用 IronPDF 進行資料提取的程式碼範例可以從詳細的代碼範例. 使用 IronPDF for Python 進行數據提取的完整教程可在以下位置獲得Python 教程並且要使用 C# 進行發票提取,請訪問IronOCR 教程.

< 上一頁
如何在 Python 中解析 PDF 文件
下一個 >
如何在 Python 中將圖片轉換為 PDF

準備開始了嗎? 版本: 2024.9 剛剛發布

免費 pip 安裝 查看許可證 >