自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

三行 Python 代碼提取 PDF 表格數(shù)據(jù)

開發(fā) 后端
從 PDF 表格中獲取數(shù)據(jù)是一項(xiàng)痛苦的工作。不久前,一位開發(fā)者提供了一個(gè)名為 Camelot 的工具,使用三行代碼就能從 PDF 文件中提取表格數(shù)據(jù)。

 

PDF 文件是一種非常常用的文件格式,通常用于正式的電子版文件。它能夠很好的將不同的排版格式固定下來,形成版面清晰且美觀的展示效果。然而,對(duì)于想要從 PDF 中提取信息的人們來說,PDF 是個(gè)噩夢(mèng),尤其是表格。

大量的學(xué)術(shù)報(bào)告、論文、分析文章都使用 PDF 展示其中的表格數(shù)據(jù),但是對(duì)于如果想要直接從表格中復(fù)制數(shù)據(jù)則會(huì)非常麻煩。不久前,有一位開發(fā)者提供了一個(gè)可從文字 PDF 中提取表格信息的工具——Camelot,能夠直接將大部分表格轉(zhuǎn)換為 Pandas 的 Dataframe。

項(xiàng)目地址:https://github.com/camelot-dev/camelot

Camelot 是什么

據(jù)項(xiàng)目介紹稱,Camelot 是一個(gè) Python 工具,用于將 PDF 文件中的表格數(shù)據(jù)提取出來。

具體而言,用戶可以像使用 Pandas 那樣打開 PDF 文件,然后利用這個(gè)工具提取表格數(shù)據(jù),最后再指定輸出的形式(如 csv 文件)。

代碼示例

項(xiàng)目提供的 PDF 文件如圖所示,假設(shè)用戶需要提取這些文字之間的表格 2-1 中的信息。

PDF 文件。我們需要提取表格 2-1。

使用 Camelot 提取表格數(shù)據(jù)的代碼如下:

  1. >>> import camelot 
  2.  
  3. >>> tables = camelot.read_pdf('foo.pdf') #類似于Pandas打開CSV文件的形式 
  4.  
  5. >>> tables[0].df # get a pandas DataFrame! 
  6.  
  7. >>> tables.export('foo.csv', f='csv', compress=True) # json, excel, html, sqlite,可指定輸出格式 
  8.  
  9. >>> tables[0].to_csv('foo.csv') # to_json, to_excel, to_html, to_sqlite, 導(dǎo)出數(shù)據(jù)為文件 
  10.  
  11. >>> tables 
  12.  
  13. <TableList n=1
  14.  
  15. >>> tables[0
  16.  
  17. <Table shape=(77)> # 獲得輸出的格式 
  18.  
  19. >>> tables[0].parsing_report 
  20.  
  21.  
  22. 'accuracy'99.02
  23.  
  24. 'whitespace'12.24
  25.  
  26. 'order'1
  27.  
  28. 'page'1 
  29.  

以下為輸出的結(jié)果,對(duì)于合并的單元格,Camelot 在抽取后做了空行處理,這是一個(gè)穩(wěn)妥的方法。

安裝方法

項(xiàng)目作者提供了三種安裝方法。首先,你可以使用 Conda 進(jìn)行安裝,這是最簡(jiǎn)單的。

  1. conda install -c conda-forge camelot-py 

最流行的安裝方法是使用 pip 安裝。

  1. pip install camelot-py[cv] 

還可以從項(xiàng)目中克隆代碼,并使用源碼安裝。

  1. git clone https://www.github.com/camelot-dev/camelot 
  2.  
  3. cd camelot 
  4.  
  5. pip install ".[cv]" 

 

責(zé)任編輯:張燕妮 來源: 機(jī)器之心
相關(guān)推薦

2019-10-09 15:51:45

Python 開發(fā)編程語言

2021-11-18 10:20:22

代碼PDFPython

2023-07-31 08:02:28

2020-05-06 22:01:52

Excel代碼Python

2018-10-07 05:27:03

Python代碼機(jī)器學(xué)習(xí)

2020-08-12 09:14:45

Python驗(yàn)證碼工具

2022-05-11 09:02:27

Python數(shù)據(jù)庫Excel

2019-06-26 08:37:23

Python數(shù)據(jù)處理編程語言

2019-09-29 09:08:41

Python數(shù)據(jù)庫Google

2020-05-20 12:50:32

代碼線性方程開發(fā)

2017-08-31 13:50:53

Python編程語言

2020-07-08 07:54:03

PythonPDF數(shù)據(jù)

2023-05-15 10:41:13

CSS深色模式

2022-05-09 13:59:41

Python提取PPTword文檔

2021-08-30 15:41:23

代碼開源微軟

2023-11-15 13:04:30

Python提取表格

2024-01-18 15:18:48

數(shù)據(jù)模型

2023-11-06 13:26:26

2023-12-19 22:44:45

PythonPDFExcel

2023-11-27 18:03:41

Python
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)