看見思法g0v第27次黑客松共筆 ================== ## 參考資料 [思法松第零次共筆](https://hackmd.io/OwVgbApsYCZgtADhsAzPALCDAzeBDYfATnhBIAYAmHGfc1DIA===) [機器大使對g0v對專案的問與答(待補)](https://g0v.hackpad.tw/-g0v--y3HTvzycp3m) ## 本次任務一:資料定海神針 ### 說明 需要把四散於諸海的資料做一個清單作為盤點。 工作就是找到資料然後把它們的連結放在[共筆的文件](https://hackmd.io/AwDmDYHYFME5oLQDMCGAjcCAsAmNWEUVYkEBjaMpAEyTLTNjViA)中。 範例如下: - [x] 各縣市區鄰里犯罪事件種類與統計 相關資料集: [85-104年與105年各縣市刑事案件發生數、破獲數及嫌疑犯人數-按案類別](https://www.npa.gov.tw/NPAGip/wSite/public/Attachment/f1498789267769.xls) ## 本次任務二:屎坑挖黃金 ### 說明 就是要用Python + Selenium + ~~PhantomJS~~ Headless Chrome組合的萬用鏟挖掘法務部統計網(屎坑)中的重要統計資料(黃金)。 今天會整理開發文件,方便往後有興趣的人一同協作! Note: 法務統計網 post form header 需要送 Content-Type: application/x-www-form-urlencoded,可以不用 cookie ### 需要人力 會基本的程式即可,坑主會手把手教學寫程式改造社會。 ## 本次任務三:資料格式乾坤大挪移 ### 說明 就是要用Tabula來把PDF的表格抓出來,轉變成Excel檔來用Python讀取資料。 我們會有相關的PDF檔案,把相關資料利用[Tabula](http://tabula.technology/)轉成CSV檔案。 不需要程式能力也可以完成喔!! ### 安裝 Tabula : http://tabula.nerdpower.org/ 在進入Tabula官網後,就可以下載windows、Mac OS的安裝檔,如果是老手的話,也可以選擇Github手動安裝,而我是選擇直接download for Mac。 ![](https://i.imgur.com/0DgLv6S.png) ### 啟動 安裝完後,啟動Tabula他會自動開啟瀏覽器,並且進入Tabula,如果沒有可以手動輸入127.0.0.1:8080,再不行請看看8080 port是不是被佔據了(預設為8080 port)。 ![](https://i.imgur.com/7oFDCV9.png) ### 使用 使用上非常容易,只要以下幾個步驟就可以完成: 1. 選擇檔案 2. 選擇範圍 3. 匯出 4. 整理檔案 1.選擇檔案 開啟網站後,下方就有很明顯的選擇檔案。 ![](https://i.imgur.com/OibgrwR.png) 2.選擇範圍 選擇範圍是利用圈選的,如果PDF有相當多頁,可以選擇repeat this selection,就會用相同的大小、位置套用在每個頁面(如果每頁都對不上就手動了...),至於小技巧,就是要多操作才能體會了。 ![]https://i.imgur.com/J5d1nk1.png) 選好區域後,就選擇Download CSV檔案吧。 3.匯出 接下來略等一小段時間,就會跳出轉好的表格,這部分是預覽轉出的狀態,確認是接近預期的狀態後,就下載CSV檔案即可完成。 4.整理檔案 範例: * [地方法院核發通訊監察案件情形-按案由分](https://cdn.fbsbx.com/v/t59.2708-21/23552956_1643538029000418_6983813429718941696_n.pdf/134.pdf?oh=16631620a38f16ff896ac7097562b3a0&oe=5A1A78D0&dl=1) 這次的範例使用地方法院核發通訊監察案件情形的PDF檔,轉完之後還是需要到編輯器略作處理。 參考資料: https://ithelp.ithome.com.tw/articles/10161568 > [name=Yu-De Lin]我會把這部分的筆記再獨立出來。謝謝大為! > [name=淵智]線上轉換網址 https://online2pdf.com/pdf2excel > 今日黑客松小成果: 1. 在看見思法專案新增了Develop的[README文件](https://github.com/yudazilian/VisualJusticeTW/tree/develop) 2. 警政署資料Schema設計(請淵智補充) - 轉置警政署欄位設計 開設兩整合表格分別以罪名-年份、罪名-縣市作主鍵 - 第三表格儲存罪名、年份、縣市皆分類的表格 - 設立一分類表格 紀錄罪名分項狀況 3. 解析警政署Excel資料的Parser(請Gilbert補充) - 轉寫通用 excel parser 方便 parse 眾多警政統計資料 - 使用 yaml 管理不同 worksheet 的 parser 設定 - 目前正在修改一些小 bug,方便日後一次處理完所有資料 4. 把PhantomJS換成Headless Chrome