iT邦幫忙

DAY 29
1

SVG 與 D3.js系列 第 29

PDF轉CSV,利用Tabula

  • 分享至 

  • xImage
  •  

D3.js最重要的就是資料,所以需要有許多不同的資料轉換方式。PDF是常見的檔案格式,因為製作方便,又可以跨裝置,所以PDF也是經常取得的檔案格式之一,相信大家都使用過PDF格式,它很適合閱讀,但至於轉成資料格式呢?似乎就沒有那麼容易。

這篇就來介紹Tabula將PDF轉換成CSV作為D3.js所需要的資料格式

Tabula

在幾個月前,Code for Kaohsiung辦了一個小活動,想讓工程師動手幫高雄,就類似g0v,不過區域不同而已。那次請到了g0v的高村長,他介紹了一個工具可以將PDF迅速轉成CSV,那就是Tabula,這次就來介紹這神奇的工具吧。

安裝

Tabula : http://tabula.nerdpower.org/

在進入Tabula官網後,就可以下載windows、Mac OS的安裝檔,如果是老手的話,也可以選擇Github手動安裝,而我是選擇直接download for Mac。

啟動

安裝完後,啟動Tabula他會自動開啟瀏覽器,並且進入Tabula,如果沒有可以手動輸入127.0.0.1:8080,再不行請看看8080 port是不是被佔據了(預設為8080 port)。

使用

使用上非常容易,只要以下幾個步驟就可以完成:

  1. 選擇檔案
  2. 選擇範圍
  3. 匯出

1.選擇檔案

開啟網站後,下方就有很明顯的選擇檔案。

2.選擇範圍

選擇範圍是利用圈選的,如果Pdf有相當多頁,可以選擇repeat this selection,就會用相同的大小、位置套用在每個頁面(如果每頁都對不上就手動了...),至於小技巧,就是要多操作才能體會了。

選好區域後,就選擇Download csv吧。

3.匯出

接下來略等一小段時間,就會跳出轉好的表格,這部分是預覽轉出的狀態,確認是接近預期的狀態後,就下載CSV,或者是複製到剪貼簿也行。

到這部分Tabula工作已經結束了。

整理檔案

範例檔案:http://kptaipei.tw/?page_id=3366

這次的範例檔案是柯P的競選經費PDF檔,轉完之後還是需要到編輯器略作處理,就以這個範例來說,每個頁面的標頭也被轉出來了,那麼就必須將它刪去。

存檔以後,一份資料CSV就完成了,就可以供d3.js使用,相信對需要整理政府資料的工程師相當實用...。


上一篇
柯P的財務報表套用 D3js Partition Layout
下一篇
D3.js 鐵人賽的結束
系列文
SVG 與 D3.js30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言