跳至頁尾內容
使用 IRONPDF FOR PYTHON

如何逐行從 PDF 中提取文本

本指南將展示如何使用 IronPDF 在 Python 中按順序從 PDF 文件中提取文字。 它將涵蓋從設定 Python 環境到執行第一個用於提取 PDF 文字的 Python 程式的所有內容。

如何逐行從 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 版本,以確認安裝成功。

更新 pip: pip是 Python 套件安裝程式。 執行pip install --upgrade pip 命令確保它是最新版本。

在 Visual Studio Code 中建立新的 Python 項目

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

安裝 Python 擴充功能:開啟 Visual Studio Code 並前往擴充市場。 搜尋並安裝微軟提供的Python擴充功能。

建立新資料夾:建立一個新資料夾,用於存放您的 Python 專案。 給它一個相關的名字,例如PDF_Text_Extractor

在 VS Code 中開啟資料夾:將資料夾拖曳到 Visual Studio Code 中,或使用"檔案">"開啟資料夾"功能表選項開啟資料夾。

建立 Python 檔案:在 VS Code 資源管理器面板中右鍵單擊,然後選擇"新檔案" 。 將檔案命名為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

# Apply your license key to unlock library features
License.LicenseKey = "YOUR-LICENSE-KEY-HERE"
from ironpdf import PdfDocument

# Apply your license key to unlock library features
License.LicenseKey = "YOUR-LICENSE-KEY-HERE"
PYTHON

請將YOUR-LICENSE-KEY-HERE替換為您的 IronPDF 實際許可證密鑰。 此許可證可讓您解鎖項目所需的所有庫功能。

載入 PDF 文件格式

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

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

"content.pdf"指的是您想要閱讀的PDF檔案。 載入的 PDF 檔案儲存在pdfFileObj變數中,用作 PDF 閱讀器或 PDF 文件物件pdfFileObj

從整個 PDF 文件中提取文本

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

all_text = pdfFileObj.ExtractAllText()
all_text = pdfFileObj.ExtractAllText()
PYTHON

這裡使用ExtractAllText方法只是為了示範目的。 此方法從 PDF 檔案中提取所有文字並將其儲存在名為all_text變數中。

從特定 PDF 頁面中提取文本

IronPDF 可以使用ExtractTextFromPage方法從特定頁面擷取文字。 當您只需要某些頁面上的文字時,此方法非常有用。

page_2_text = pdfFileObj.ExtractTextFromPage(1)
page_2_text = pdfFileObj.ExtractTextFromPage(1)
PYTHON

在這裡,我們從第二頁提取文本,對應的索引為 1。

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

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

開啟名為"extracted_text.txt"的文件,儲存文字資料。 用於此目的的是 Python 內建的open函數,將檔案模式設為"寫入"( "w" ), encoding='utf-8'以處理 Unicode 字元。

遍歷每一頁,逐行擷取文字。

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

上面的程式碼循環遍歷 PDF 檔案中的每一頁,使用 IronPDF 的get_Pages().Count來取得總頁數。

提取文字並將其分割成行

page_text = pdf.ExtractTextFromPage(i)
lines = page_text.split('\n')
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')
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", encoding='utf-8') as text_file:
    # Get the number of pages in the PDF document
    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 line to the console
            # Write each line to the text document
            text_file.write(eachline + '\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", encoding='utf-8') as text_file:
    # Get the number of pages in the PDF document
    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 line to the console
            # Write each line to the text document
            text_file.write(eachline + '\n')
PYTHON

輸出

在 Visual Studio Code 終端機中輸入以下命令來執行 Python 檔案:

python main.py
python main.py
SHELL

結果將顯示在終端上:

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

這是從 PDF 文件中提取的文本。您還會注意到目錄中建立了一個文字檔案。

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

在這個文字檔案中,您將找到已擷取的文字格式,並按順序呈現。

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

結論

總之,使用 IronPDF 和 Python 從 PDF 文件中提取文字是一種強大而簡單的方法,無論是從整個文件、特定頁面還是逐行提取文字。此外,將擷取的文字儲存到文字檔案中,以便於您有效率地管理和利用這些資料進行後續處理。 IronPDF 被證明是處理 PDF 的非常寶貴的工具,它提供的功能遠不止文字擷取。 您也可以使用IronPDF在Python中將PDF轉換為文字

此外,IronPDF 工具包還可以幫助完成以下任務:建立互動式 PDF、填寫和提交互動式表單合併分割PDF 文件、提取文字和圖像、在 PDF 文件中搜尋文字、將 PDF 柵格化為圖像、更改字體大小、邊框和背景顏色以及轉換 PDF 文件。

IronPDF 不是一個開源的 Python 函式庫。 如果您正在考慮在您的專案中使用 IronPDF,軟體套件的許可證起價為$799 。 不過,如果您需要了解投資詳情,IronPDF 提供免費試用版,讓您可以全面了解其功能。

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

常見問題解答

如何使用Python從PDF中提取文字?

您可以使用 IronPDF 在 Python 中從 PDF 檔案中提取文字。它透過PdfDocument.FromFile方法載入 PDF 文件,然後遍歷頁面逐行提取文字。

要在Python中從PDF中提取文本,需要哪些條件?

要在 Python 中從 PDF 文件中提取文本,您需要安裝 Python 以及 IronPDF 庫,該庫可以透過 pip 安裝。建議使用 Visual Studio Code 等整合開發環境 (IDE) 來編寫和執行腳本。

IronPDF 能否從 PDF 文件中的特定頁面提取文字?

是的,IronPDF 允許您使用ExtractTextFromPage方法,透過指定頁面索引,從 PDF 的特定頁面提取文字。

如何在Python中將提取的文本保存到文件中?

使用 IronPDF 提取文字後,您可以使用 Python 的文件處理方法將提取的文字行寫入文字文件,從而將其儲存到文件中。

除了文字擷取功能外,IronPDF 還提供哪些其他功能?

IronPDF 提供廣泛的功能,包括建立、編輯和轉換 PDF,合併和分割 PDF 文檔,提取影像以及將 PDF 轉換為其他文件格式。

如何在我的Python專案中使用IronPDF許可證?

要獲得 IronPDF 的許可,請在 Python 腳本中使用License.LicenseKey屬性設定您的許可證密鑰,這將解鎖庫的全部功能。

購買前可以試用IronPDF嗎?

是的,IronPDF 提供試用版,您可以在決定購買完整授權之前評估其功能。

如果在提取PDF文字時遇到問題,我該怎麼辦?

請確保 IronPDF 已正確安裝並獲得許可,並且您的 Python 環境已正確配置。有關常見問題的故障排除,請參閱文件或支援資源。

我可以使用 IronPDF 將 PDF 文件轉換為圖像嗎?

是的,IronPDF 提供了將 PDF 柵格化為影像的功能,可讓您將整個文件或特定頁面轉換為影像檔案。

如何運行Python腳本來提取PDF文字?

編寫完腳本後,您可以在 IDE 的終端中執行python main.py來執行它,其中main.py是您的腳本檔案的名稱。

柯蒂斯·週
技術撰稿人

Curtis Chau擁有卡爾頓大學電腦科學學士學位,專長於前端開發,精通Node.js、TypeScript、JavaScript和React。他熱衷於打造直覺美觀的使用者介面,喜歡使用現代框架,並擅長撰寫結構清晰、視覺效果出色的使用者手冊。

除了開發工作之外,柯蒂斯對物聯網 (IoT) 也抱有濃厚的興趣,致力於探索硬體和軟體整合的創新方法。閒暇時,他喜歡玩遊戲和製作 Discord 機器人,將他對科技的熱愛與創造力結合。