使用IRONPDF FOR PYTHON

如何逐行提取 PDF 文本

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

本指南將展示如何在Python中使用IronPDF從PDF文件中按順序提取文本的細微差別。 它將涵蓋從設置您的 Python 環境到執行您的第一個 Python 程式以進行 PDF 文本擷取的所有內容。

如何逐行從 PDF 中提取文本

  1. 使用 Python 下載並安裝 PDF 函式庫,以從 PDF 文件行中提取文本。

  2. 在您偏好的 IDE 中創建一個 Python 專案。

  3. 載入所需的 PDF 文件以提取文字內容。

  4. 使用內建庫的功能逐步循環遍歷 PDF 並提取文本。

  5. 將擷取的文本儲存到檔案。

IronPDF PDF Python 庫

IronPDF是允許您在 Python 中處理 PDF 文件的便捷工具。 把它想像成一個能讓閱讀、創建和編輯 PDF 文件變得容易的助手。 無論您是想從 PDF 文件中提取內容,加入新的資訊,或將網頁轉換為 PDF 格式,IronPDF 提供全面的解決方案。 這是一個付費的軟體包,但他們提供試用版本讓您在購買前進行探索。

在深入腳本之前,設置您的 Python 環境是至關重要的。 本逐步指南將幫助您配置環境,在 Visual Studio Code 中創建新的 Python 專案,並設定 IronPDF 程式庫的環境配置。

下載和安裝 Python:如果您還沒有安裝 Python,請從最近的版本下載官方 Python 網站. 按照適用於您特定操作系統的安裝說明進行操作。

檢查 Python 安裝:打開終端機或命令提示字元,輸入 python --version。 此命令應顯示已安裝的 Python 版本,以確認安裝成功。

更新 pipPip 是 Python 的套件安裝工具。 確保其為最新版本,請運行 pip install --upgrade pip

在 Visual Studio Code 中創建一個新的 Python 項目

下載 Visual Studio Code:如果您還沒有,請從官方網站.

安裝 Python 擴充功能:打開 Visual Studio Code,前往擴充功能市集。 搜尋 Microsoft 的 Python 擴展並安裝它。

創建新資料夾:創建一個新的資料夾,用於存放您的 Python 專案。 將其命名為與之相關的內容,例如 PDF_Text_Extractor

在 VS Code 中打開資料夾:將資料夾拖入 Visual Studio Code 或使用 檔案 > 開啟資料夾 選單選項來打開資料夾。

建立 Python 檔案:在 VS Code Explorer 面板中右鍵點擊,然後選擇新檔案。 將文件命名為main.py或類似名稱。 這個文件將保存您的 Python 程式。

如何逐行提取 PDF 中的文本,圖 1:在 Visual Studio Code 中創建新的 Python 文件

在 Visual Studio Code 中創建新的 Python 文件

IronPDF 函式庫要求與設置

IronPDF 對於從 PDF 檔案中提取文本內容至關重要。 以下是安裝方法:

在 VS Code 中開啟終端機:您可以在 VS Code 中通過選擇 終端機 > 新終端機 來開啟終端機。

安裝 IronPDF:在終端中執行以下命令以安裝最新版本的 IronPDF:

 pip install ironpdf

此過程會檢索並安裝 IronPDF 庫以及任何所需的模組。

如何逐行從 PDF 提取文本,圖 2:安裝 IronPDF 套件

安裝 IronPDF 套件

這就是結果。! 您現已成功設置 Python 環境,在 Visual Studio Code 中創建新項目,並安裝 IronPDF 庫。

逐行從 PDF 中提取文本

套用授權金鑰

在繼續之前,請確保您已應用您的 IronPDF 授權金鑰。

from ironpdf import PdfDocument

License.LicenseKey = "YOUR-LICENSE-KEY-HERE"
PYTHON

YOUR-LICENSE-KEY-HERE 替換為您實際的 IronPDF 許可證密鑰。 此授權可讓您為您的專案解鎖所有庫功能。

正在載入PDF檔案格式

您需要將現有的 PDF 檔案載入到您的 Python 程式中。 您可以使用 IronPDF 的 PdfDocument.FromFile 方法來實現這一點。

pdfFileObj = PdfDocument.FromFile("content.pdf")
PYTHON

「content.pdf」指的是您希望閱讀的 PDF 檔案。 此已載入的 PDF 檔案儲存在 pdfFileObj 變數中,用作 PDF 閱讀器或 PDF 檔案對象 pdfFileObj

從整個 PDF 文件中提取文本

如果您想要一次抓取 PDF 文件中的所有文本數據,您可以使用 ExtractAllText 方法。

all_text = pdfFileObj.ExtractAllText()
PYTHON

這裡使用ExtractAllText方法進行示範。 此方法從 PDF 文件中提取所有文本並將其存儲在名為 all_text 的變量中。

從特定 PDF 頁面提取文字

IronPDF 透過 ExtractTextFromPage 方法實現從特定頁面提取文字的功能。 此方法在您只需要某些頁面的文本時非常有用。

page_2_text = pdfFileObj.ExtractTextFromPage(1)
PYTHON

在這裡,我們正在從第二頁提取文字,對應於索引1。

初始化文字檔以寫入提取的文本

with open("extracted_text.txt", "w", encoding='utf-8') as text_file:
PYTHON

打開一個名為「extracted_text.txt」的檔案,儲存文本數據。 Python內建的 open 函數就能實現這個目的,將檔案模式設為「寫入」("w"). 只需將 encoding='utf-8' 作為參數添加到 open 函數中。 此功能應允許文本文檔處理您遇到的 Unicode 字符。

逐頁循環逐行提取文本

for i in range(0, pdfFileObj.get_Pages().Count):
PYTHON

上述代碼使用IronPDF的get_Pages遍歷PDF文件中的每一頁。().Count` 來獲取總頁數。

提取文本並將其分割成行

page_text = pdf.ExtractTextFromPage(i)
lines = page_text.split('\n')
PYTHON

對於每個頁面,使用 ExtractTextFromPage 方法獲取所有文本,然後使用 Python 的 split 方法將其分割成行。 這將產生一個可循環的行列表。

將提取的行寫入文字檔案

for eachline in lines:
    print(eachline)
    text_file.write(eachline + '\n')
PYTHON

在這裡,程式碼遍歷各行列表中的每一行,將其輸出到控制台,並透過添加換行符將其寫入檔案。(\n)在每行之後添加來適當地格式化此文本。

完整代碼

以下是綜合實施:

from ironpdf import PdfDocument

# Apply your license key
License.LicenseKey = "Your-License-Key-Here"

# Load an existing PDF file
pdfFileObj = PdfDocument.FromFile("content.pdf")

# Extract text from the entire PDF file
all_text = pdfFileObj.ExtractAllText()

# Extract text from a specific page in the file (Page 2)
page_2_text = pdfFileObj.ExtractTextFromPage(1)

# Initialize a file object for writing the extracted text
with open("extracted_text.txt", "w") as text_file:
    # Print number of pages in PDF file print count of pages present in PDF file
    num_of_pages = pdfFileObj.get_Pages().Count
    print("Number of pages in given document are ", num_of_pages)

    # Loop through each page using the Count property
    for i in range(0, num_of_pages):

        # Extract text from the current page
        page_text = pdfFileObj.ExtractTextFromPage(i)

        # Split the text by lines from this page object
        lines = page_text.split('\n')

        # Loop through the lines and print/write them
        for eachline in lines:
            print(eachline)  # Print each eachline to the console
            # Write each line to the text documents
            text_file.write(eachline + '\n')
PYTHON

輸出

在 Visual Studio Code 終端中輸入以下命令來運行 Python 文件:

python main.py

此結果將顯示在終端機上:

如何逐行從 PDF 中提取文本,圖 3:提取的文本

提取的文本

這是從 PDF 文件中檢索到的文本。您還會注意到在您的目錄中創建了一個文本文件。

如何逐行從 PDF 中提取文本,圖 4:提取的文本儲存在 TXT 文件中

存儲在 TXT 檔案中的提取文本

在此文本檔中,您將找到已檢索出的文本格式,按順序呈現。

如何逐行從 PDF 中提取文本,圖5:提取的文本文件內容

提取的文本文件內容

結論

總之,使用 IronPDF 和 Python 從 PDF 文件中提取文本是一種強大而簡單的方法,無論是從整個文檔、特定頁面,甚至是逐行提取文本。將這些提取的文本保存到文本文件中的附加好處使您能夠有效管理和利用這些數據以供未來處理。 IronPDF 被證明是在處理 PDF 時不可或缺的工具,提供的不只是文字提取的多種功能。 您也可以將 PDF 轉換為 Python 中的文字使用 IronPDF。

此外,創建互動式 PDF、填寫和提交互動表單, 合併劃分PDF 文件,提取文本和圖片在 PDF 文件中搜索文本,將 PDF 光柵化為圖像更改字體大小、邊框和背景顏色,以及轉換 PDF 檔案,都是 IronPDF 工具包可以協助完成的任務。

IronPDF不是開源的Python庫。 如果您正在考慮在項目中使用 IronPDF,套件的授權價格從 $749 開始。 但是,如果您需要對投資進行說明,IronPDF 提供一個免費試用徹底探索它的功能。

如何逐行從 PDF 中提取文本,圖 6:授權頁面

< 上一頁
如何從 PDF 中擷取數據於 Python
下一個 >
如何使用 IronPDF 在 Python 中輕鬆註釋 PDF

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

免費 pip 安裝 查看許可證 >