用Python將PDF格式轉為txt格式文本

微信圖片_20240321160253.png

微信截圖_20240321145558.png

我們的工作內(nèi)容是對上市公司的定期公告進行分析。

其中一環(huán)節(jié)是對大量的pdf格式的文件進行文本處理。

此次的示例,是隨機選中的文本內(nèi)容,共計344個pdf格式文件。

分析過程中對圖片圖表的需求并不大,將pdf批量轉換成txt文本內(nèi)容已經(jīng)滿足。如果考慮格式以及圖片的讀取,可以使用Python將pdf轉csv、Word。

微信截圖_20240321144958.png

使用Python調(diào)用pdfplumber庫,將將PDF格式轉為txt格式文本。

首先安裝pdfplumber庫:

pip install pdfplumber

使用以下Python腳本來遍歷指定文件夾中的所有PDF文件,將它們轉換為TXT格式,并保存在一個新的文件夾:
import os
import pdfplumber

源文件夾路徑

source_folder = "D:\daku\東鵬\pdf"

目標文件夾路徑,用于保存TXT文件

target_folder = "D:\daku\東鵬\txt_exports"

如果目標文件夾不存在,則創(chuàng)建它

if not os.path.exists(target_folder):
os.makedirs(target_folder)

遍歷源文件夾中的所有文件

for filename in os.listdir(source_folder):
if filename.endswith(".pdf"):
# 構建完整的文件路徑
file_path = os.path.join(source_folder, filename)

    # 使用pdfplumber打開PDF文件
    with pdfplumber.open(file_path) as pdf:
        # 初始化一個空字符串來保存文本內(nèi)容
        text = ""

        # 遍歷PDF中的每一頁
        for page in pdf.pages:
            # 提取頁面的文本并添加到text變量中
            text += page.extract_text()
            text += "\n\n"  # 添加換行符以分隔不同頁面的內(nèi)容

    # 構建目標TXT文件的路徑,文件名保持不變,只是擴展名改為.txt
    txt_file_path = os.path.join(target_folder, filename.replace(".pdf", ".txt"))

    # 將文本內(nèi)容寫入TXT文件
    with open(txt_file_path, "w", encoding="utf-8") as txt_file:
        txt_file.write(text)

    print(f"已轉換文件: {filename} -> {txt_file_path}")
微信截圖_20240321152334.png

344個pdf文件很迅速就可以轉為txt文本

微信截圖_20240321152316.png
微信截圖_20240321152334.png

工作導向不同,工作流程會存在差異,需要讀取pdf文件中的圖片,相關Python庫可以使用將圖像中的文字識別為文本進行導出。


thank-you-emoticon-41.jpg
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容