有一天突然有一個莫名的想法,好想看日出喔.....
後來就在想乾脆約死黨,連假去山上露營看日出好了。
既然有這個想法,那麼我們就要想辦法去執行!
我的宗直就是,挑戰自我 離開自己的舒適圈
先來說說我計畫的想法,如果能找出當地地方的日出時間
這樣在晚上露營喝酒時,就知道什麼時候該休息
休息到幾點該起來看日出 呵呵!
所以就去中央氣象局的網站查各地日出的時刻表(笑)
以上敘述,跟這次程式內容沒有太實際相關(笑)
希望大家都能離開自己的舒適圈 挑戰自己!!
我純粹是為了湊文章字數才會寫出來的。
但這個露營計畫是真的,也已經有跟死黨在規劃中。
會寫這篇文章,是之前我有一位女性友人
她在會計事務所上班,所遇到的一個問題
問我 python 能不能抓取 PDF 表格內容、數據
我就很有自信的回答她。 有! 用 camelot 這個套件(雖然我都沒有用過,只有聽過)
但我還是很認真的回答她!!
因為這個原因,後來就決定寫一篇 使用 camelot 套件 來讀取 PDF 的內容
反正我也沒有用過(笑) ,這是寫開心的。
先來說說 camelot 套件,這是一套能夠抓取 PDF檔表格內容的套件
那我就以我那個計畫來弄一個簡單的不負責任範例。
如果我今天到中央氣象局的網站,下載我要的地方日出 PDF
可是我又想把 PDF 裡面的表格內容抓出來 自己整理 如下圖
我這邊用 jupyter notebook 來寫。
首先先 讀取 PDF , camelot.read_pdf ( 檔案位置, 頁數, 表格解析方式)
檔案位置: 絕對位置 or 網路上的檔案位置
頁數: 讀取 PDF 第X頁 ( 讀取要的表格在X頁 )
解析方式: lattice or stream ( 這邊使用 stream , 把整頁當成表格來解析 )
再印出 解析的結果
再來就能夠把 抓取的內容印出來 如下圖
這時就能把 tables[0].df 轉成其他格式檔案 ( html , csv , excel , json 等等)
這邊我就轉成 csv
轉好之後 我們就能夠打開csv檔,這時會遇到一個問題 中文字的部分出現亂碼
excel 預設為 ANSI,可是檔案裡面的中文是以 BIG5,所以格式不符就會出現亂碼
這邊很簡單把CSV檔用記事本開啟,編碼存成 具有BOM的UTF-8
這樣就成解決檔案出現亂碼的問題,而且開始弄資料處理的部分了。
當然這種套件的使用都是依照個人需求,而這個檔案的表格其實不適合拿來示範
因為不夠亂不夠雜,感覺不能體現出套件的強大功能。
但如果今天是一個非常複雜的表格,像是什麼公家機關法院公布的法拍屋 PDF檔資訊, 通常那種表格都是特別的雜又亂。這時在做文書處理,就能使用這種套件來處理,能大大的縮短時間,也方便做資料整理。