天天看點

Python自動化辦公:PDF到Excel表格提取實踐

作者:人工智能取經人

在數字化辦公的時代,我們時常遇到各種檔案格式轉換與資料提取的需求。而Python在處理這類問題時是非常高效且精準。今天,我将分享一個專業級的實踐案例,使用Python從PDF檔案中提取Excel表格。

我的朋友,一名資深行政人員,近期需要處理一份包含多個Excel表格的PDF員工手冊模闆。由于PDF的限制,直接複制粘貼表格到Excel中是不可行的,而手動重新制作這些表格不僅耗時,還容易出錯。面對這一挑戰,我決定利用Python來助她一臂之力。

Python自動化辦公:PDF到Excel表格提取實踐
Python自動化辦公:PDF到Excel表格提取實踐
Python自動化辦公:PDF到Excel表格提取實踐

首先,我選擇了tabula-py和pandas這兩個Python庫。tabula-py是基于Java庫Tabula的Python封裝,能夠輕松地從PDF中提取表格資料;而pandas則是一個強大的資料處理庫,能夠友善地處理表格資料并将其儲存為Excel格式。

接下來,我編寫了一段Python代碼來實作從PDF中提取表格并儲存為Excel檔案的功能:

Python代碼

import tabula  
import pandas as pd  
  
# PDF檔案路徑  
pdf_path = '績效考核表格.pdf'  
  
# 讀取PDF中的所有表格  
tables = tabula.read_pdf(pdf_path, pages='all', multiple_tables=True)  
  
# 周遊每個表格,并轉換為pandas DataFrame  
for i, table in enumerate(tables):  
    df = pd.DataFrame(table)  
      
    # 清洗資料,根據具體表格結構可能需要進行額外的處理  
    # 例如,删除空行、處理列名等  
    # df = df.dropna(how='all')  # 删除全空行  
    # df.columns = ['Column1', 'Column2', ...]  # 設定列名  
      
    # 将清洗後的DataFrame儲存為Excel檔案  
    excel_path = f'extracted_table_{i}.xlsx'  
    df.to_excel(excel_path, index=False)

           
Python自動化辦公:PDF到Excel表格提取實踐
Python自動化辦公:PDF到Excel表格提取實踐
Python自動化辦公:PDF到Excel表格提取實踐

這段代碼首先使用tabula.read_pdf函數讀取PDF檔案中的所有表格,然後周遊每個表格并将其轉換為pandas的DataFrame對象。在轉換過程中,我們可以根據具體表格的結構進行資料的清洗和處理,例如删除空行、設定列名等。最後,使用df.to_excel方法将清洗後的DataFrame儲存為Excel檔案。

通過運作這段代碼,我的朋友成功地從PDF員工手冊模闆中提取出了所有的Excel表格,并且這些表格的格式和資料都保持了原樣。這極大地提高了她的工作效率,也避免了手動操作可能帶來的錯誤。

這個案例展示了Python在自動化辦公領域的強大實力。通過選擇合适的庫和編寫高效的代碼,我們可以輕松地解決各種檔案格式轉換和資料提取的問題。如果你也面臨着類似的挑戰,不妨嘗試一下Python自動化辦公,相信它會給你帶來意想不到的驚喜。

繼續閱讀