Python如何批量提取PDF表格數據轉為Excel?Python怎么將PDF表格保存為Excel文件

在之前的文章之中小編已經給大家介紹過了python將pdf文件之中表格取出來的方法,但是表格數據取出來之后如果不保存在程序關閉之后就會被銷毀 。所以下面會來詳細介紹一下,python如何批量提取PDF表格數據并轉為Excel文件保存的方法,一起往下看看吧 。
【Python如何批量提取PDF表格數據轉為Excel?Python怎么將PDF表格保存為Excel文件】

Python如何批量提取PDF表格數據轉為Excel?Python怎么將PDF表格保存為Excel文件


1.因為是要批量提取pdf文件,所以需要導入的模塊為os、glob、pdfplumber這三個,其中glob模塊的作用則是能夠用來實現指定pdf文件的查找操作 。模塊導入文件之后定義一個變量,此變量需要接收字符串類型的文件路徑,該文件路徑需要有多個pdf文件存在,代碼如下:
import osimport globimport pdfplumberimport pandas as pdpath = r'/Users/wangwangyuqing/Desktop/pdf'2.然后使用創建for循環結構,此循環迭代遍歷的對象就是通過join()方法加上文件路徑和pdf后綴,找到的該文件路徑內所有pdf文件 。然后用這個文件路徑去調用提取表格并轉為Excel文件的函數,代碼如下:
for f in glob.glob(os.path.join(path, "*.pdf")):  res = save_pdf_to_excel(f)3.然后就是整個程序的關鍵核心代碼了,定義函數并接收pdf文件路徑作為參數 。函數之中首先調用open()方法將pdf文件打開,然后獲取到它所有的頁碼,再循環這個頁碼對象并且調用extract方法來獲取這些頁碼之中的表格數據 。
表格數據獲取到之后使用pandas第三方庫將其轉為表格格式的Dataframe類型對象,然后去調用to_excle()方法就可以將這個表格數據保存到Excel之中了,詳細代碼示例如下所示:
def save_pdf_to_excel(path):  pdf = pdfplumber.open(path)  pages = pdf.pages  tables = []  for each in pages:    table = each.extract_table()    tables.extend(table)  data = pd.DataFrame(tables[1:], columns=tables[0])  file_name = path.split('/')[-1].split('.')[0] + '.xlsx'  data.to_excel("/Useop/data/{}".format(file_name), index=False)以上就是關于“Python如何批量提取PDF表格數據轉為Excel?Python怎么將PDF表格保存為Excel文件”的全部內容了,希望對你有所幫助 。

    猜你喜歡