使用IRONPDF FOR PYTHON

如何在 Python 中從 PDF 提取特定文本

發佈 2023年8月2日
分享:

1.0 介紹

當談到文件共享和數據處理時,由 Adobe 創建的便攜式文檔格式 (PDF) 文件對於保存富含文字和美觀內容的完整性至關重要。要訪問線上的 PDF 文檔,通常需要具備所需模組的特定程式。在現代社會中,PDF 文件在許多重要的數字出版物中是不可或缺的。許多企業使用 PDF 數據文件來創建專業文件和發票。為了滿足特定的客戶需求,例如提取數據,開發人員經常使用 PDF 文件創建庫。

現代庫的演變使 PDF 的創建和文本提取變得更加容易。為了實現無縫整合和最佳性能,在選擇與 PDF 生成相關的專案所需的適當庫時,必須考慮到 PDF 文件的構建、閱讀、數據提取和轉換能力。Python 可用於解析現有的 PDF 並從中提取頁面文本。有各種可用的 Python 庫。IronPDF 是一個功能強大的庫,可以從 PDF 文件中提取文本和圖像等。

在本文中,我們將借助 IronPDF Python 庫從 PDF 文檔中提取文本元素。

2.0 IronPDF

Python是一種編程語言,使開發人員能夠簡單快速地創建圖形用戶界面。與其他語言相比,Python對程式設計師來說也更加動態。因此,將IronPDF庫添加到Python中是一個簡單的過程。許多預裝工具,包括PyQt、wxWidgets、Kivy以及許多其他包和Python庫,都可以用於快速且安全地構建一個完整的GUI。IronPDF結合Python,還允許我們集成來自其他框架(如.NET Core)的功能。

IronPDF使網頁開發變得更容易。這主要是由於Python網頁開發範式(如Django、Flask和Pyramid)被廣泛採用。Reddit、Mozilla和Spotify只是使用這些框架的一部分網站和在線服務。

2.1 IronPDF 功能

  • 使用 IronPDF 可以從多種來源建立 PDF 檔案,包括 HTML、HTML5、ASPX 和 Razor/MVC View。它提供將 HTML 頁面和影像轉換為 PDF 檔案的功能。
  • 建立互動式 PDF、填寫和提交互動表單、合併和分割 PDF 檔案、提取文字和圖片、搜索 PDF 檔案中的文字、將 PDF 光柵化為圖片、改變字體大小、使用 ChatGPT 進行自然語言處理以及轉換 PDF 頁面屬性只是 IronPDF 工具包可以幫助完成的一些活動。
  • IronPDF 提供 HTML 登錄表單驗證,支持用戶代理、代理伺服器、Cookie、HTTP 標頭和表單變量。
  • IronPDF 使用用戶名和密碼來提供用戶訪問受保護文件的權限。
  • 只需幾行代碼,我們就可以從多種來源(包括字串、流或 URL)列印 PDF 檔案。

3.0 設置 Python

3.1 環境配置

請確保已在您的電腦上設定好 Python。要下載並安裝與您的作業系統相容的最新版本 Python,請前往官方的 Python 網站Python 安裝完成後,建立虛擬環境以分隔專案所需。使用 venv 模組建立和管理虛擬環境,為您的轉換專案提供一個整潔、獨立的工作空間。

3.2 在 PyCharm 中的新舉措

為了這次演示,我們將使用 PyCharm,一個用於開發 Python 代碼的 IDE。

啟動 PyCharm IDE 後,選擇「New Project」。

如何在 Python 中從 PDF 中提取特定文本:圖1 - PyCharm

當您選擇「新專案」時,將會開啟一個新視窗,允許您設定專案的位置和環境。這可以在下圖中看到。

如何在 Python 中從 PDF 中提取特定文本:圖 2 - 新項目

選擇專案位置和環境路徑後,點擊“Create”按鈕開始一個新專案。接著,會開啟一個新視窗來創建此程式。在本課程中,我們使用 Python 3.9。

如何在 Python 中從 PDF 提取特定文本:圖 3 - 創建 Python 專案

3.3 IronPDF 庫需求

Python 庫 IronPDF 主要使用 .NET 6.0。因此,必須在您的電腦上安裝 .NET 6.0 運行時才能使用 IronPDF Python。Linux 和 Mac 用戶在使用此 Python 模塊之前可能需要安裝 .NET。訪問此 頁面 以取得所需的執行環境。

3.4 IronPDF 庫設置

要生成、修改和打開“.pdf”擴展名的文件,必須安裝“ironpdf”包。打開終端窗口並輸入以下命令在 PyCharm 中安裝該包:

:PackageInstall

安裝 ironpdf 套件的過程如下圖所示。

如何在 Python 中從 PDF 中提取特定文本:圖 4 - 安裝 IronPDF

4.0 從 PDF 文件中提取特定數據

我們可以藉助 IronPDF 庫從 PDF 文件中提取文字。IronPDF 提供了多種文字提取方法。第一種方法是將整個頁面的內容作為單一字符串檢索。第二種策略是逐頁閱覽內容,從第一頁開始。可以使用 IronPDF 庫調查現有 PDF 文件。下面的代碼段展示了如何使用 IronPDF 檢查實時 PDF 文件。

我們有兩個選擇來從 PDF 中提取資訊:

  1. 從 PDF 逐頁提取

  2. 將整個 PDF 轉換為文字

我們將在這篇文章中使用的 PDF 文件請見下方。

如何從 PDF 中提取特定文本在 Python 中:圖 5 - 輸入 PDF

4.1 從 PDF 中逐頁提取內容

以下提供的示例程式碼示範如何使用頁碼從 PDF 檔案中獲取數據。

from ironpdf import *
# # PDF object
pdf = PdfDocument.FromFile('F:\\PDF\\Extract.pdf')
# # Extract text from PDF document
all_text = pdf.ExtractTextFromPage(0)
for _data in all_text.split('\n'):
    if('Name' in _data):
        print(_data)
PYTHON

程式碼片段展示了如何使用FromFile函數讀取PDF檔案並建立PDF物件。我們可以使用這個物件來存取PDF的文字和照片。透過將頁碼作為參數傳遞給ExtractTextFromPage函數,我們可以從指定頁面檢索文字。此方法會返回一個包含所選頁面上所有單詞的字串。接著,我們在Python中使用split函數將擷取的文字中的所有新行拆分出來。之後,我們檢查擷取的文字中的每一行是否包含我們需要找到的關鍵字。如果關鍵字匹配,則會在命令提示符中顯示該特定行。否則,將忽略該行並繼續下一行。文字擷取的輸出將如下面所示。

4.2 將整個 PDF 轉換為文字

以下的程式碼範例展示了第一種快速簡單地將所有 PDF 內容作為字串獲取的方法。

pdf = PdfDocument.FromFile('F:\\PDF\\Extract.pdf')
# # Extracting texts from PDF document
all_text = pdf.ExtractAllText()
for _data in all_text.split('\n'):
    if('Name' in _data):
        print(_data)
PYTHON

上述示例代码演示了如何使用 FromFile 函数從現有文件路徑讀取 PDF 並將其轉換為 PDF 文件對象。因此,我們可以使用這個 PDF 閱讀器對象來查看 PDF 中的文本和圖像。使用對象的 ExtractAllText 函數從 PDF 中提取數據轉換為純文本,將其轉換為字符串,並使用與上述類似的邏輯查找特定關鍵字並在終端顯示結果。結果顯示如下。

如何在 Python 中從 PDF 提取特定文本:圖 6 - 輸出

上述代碼/輸出顯示給定的 PDF 文件包含姓名和年齡,但結果僅顯示 PDF 文件中可用的姓名。

5.0 結論

IronPDF 庫提供了強大的安全機制來降低威脅並確保數據安全。它不受任何單一瀏覽器的限制,與所有廣泛使用的瀏覽器兼容。開發人員只需幾行代碼就可以使用 IronPDF 快速生成和閱讀 PDF 文件。IronPDF 庫提供了多種許可選項,包括免費的開發者許可和可購買的額外開發許可,以滿足開發者的不同需求。

永久許可、30 天退款保證、一年的軟件維護和升級選項都包括在內。 輕量套件. 這些許可證可以用於所有環境。此外,IronPDF 提供帶有某些再分發限制的免費許可證。 試用授權 讓用戶可以無水印地評估產品。 查看可用的 IronPDF 授權 如需更多有關商用授權的資訊。

< 上一頁
如何在 Python 中編輯 PDF 檔案
下一個 >
如何在 Python 中扁平化 PDF 文件

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

免費 pip 安裝 查看許可證 >