iT邦幫忙

2021 iThome 鐵人賽

DAY 5
1
Mobile Development

Android 口罩地圖入門實戰 30 天 (使用 Kotlin 程式語言)系列 第 5

Day 5:口罩即時庫存開放資料

本篇文章同步發表在 HKT 線上教室 部落格,線上影音教學課程已上架至 UdemyYoutube 頻道。另外,想追蹤更多相關技術資訊,歡迎到 臉書粉絲專頁 按讚追蹤喔~

政府資料開放平臺

在介紹「口罩資料」之前,KT 先跟大家介紹一下「政府資料開放平臺」,在這一個網站上,政府根據《政府資訊公開法》,收集了各縣市跨部門的單位資料。目前資料分類上共有18種,其中資料格式有常見的 CSV、XML、JSON 等多樣式格式提供給任何人,在其使用規範內,皆可以使用用該平臺所提供的開放資料自由運用,其中包含了重製、改作、公開傳輸和產生衍生物等。

口罩剩餘數量

而我們這次口罩資料源頭,也是隸屬在這個平台上,健保特約機構口罩剩餘數量明細清單 :

點擊頁面中的「檢視資料」,可以看到其他種資料格式:

開源的藥局資料結合衛生所即時庫存API資料

但上方開放資料只有口罩庫存資料,若我們想結合 Google Map 地圖來標示各藥局分佈,就還需要自己動手結合藥局資料與地址轉座標經、緯度資料。在此特別感謝有好心的大大神人 kiang,已經幫我們統整了藥局資訊、口罩庫存與座標資料。我們不再重覆再造輪子,所以我們改採用 kiang 的 開源的藥局+衛生所即時庫存API資料

我們擷取其中一筆資料來瞧瞧,其中包含了,藥局名稱、營業時間、電話、地址、經緯度座標...等藥局相關資訊:

{
  "type": "FeatureCollection",
  "features": [
          {
            "type": "Feature",
            "properties": {
                "id": "5901024427",
                "name": "博昱仁愛藥局",
                "phone": "(02)87739258",
                "address": "臺北市大安區仁愛路4段65號",
                "mask_adult": 0,
                "mask_child": 450,
                "updated": "2020\/09\/13 11:32:37",
                "available": "星期一上午看診、星期二上午看診、星期三上午看診、星期四上午看診、星期五上午看診、星期六上午看診、星期日上午看診、星期一下午看診、星期二下午看診、星期三下午看診、星期四下午看診、星期五下午看診、星期六下午看診、星期日下午看診、星期一晚上看診、星期二晚上看診、星期三晚上看診、星期四晚上看診、星期五晚上看診、星期六晚上看診、星期日晚上看診",
                "note": "週間(週一至週五)上午9點發放號碼牌收取健保卡,下午2點領取",
                "custom_note": "",
                "website": "",
                "county": "臺北市",
                "town": "大安區",
                "cunli": "仁愛里",
                "service_periods": "NNNNNNNNNNNNNNNNNNNNN"
            },
            "geometry": {
                "type": "Point",
                "coordinates": [
                    121.546869,
                    25.038194
                ]
            }
        },
    ...
    ...
    ...
    
  ]
}

而大部分時間,我們都是在練習如何使用開源資料,所以我們在學習的階段,暫時可以先不用訪問真實即時庫存資料,造成不必要的國家資源浪費,另外也防止之後疫情結束,政府口罩資訊下架,仍可以繼續學習使用,所以 KT 將 kiang 大大 統整的資料,其中一天特別備份,作為日後學習開發使用。

部分藥局口罩資料(其中一天)
https://raw.githubusercontent.com/thishkt/pharmacies/fafd14667432171227be3e2461cf3b74f9cb9b67/data/info.json

完整藥局口罩資料(其中一天)
https://raw.githubusercontent.com/thishkt/pharmacies/master/data/info.json

參考資料

HKT 線上教室
https://tw-hkt.blogspot.com/

Freepik
https://www.freepik.com/

政府資料開放平臺-健保特約機構口罩剩餘數量明細清單
https://data.gov.tw/dataset/116285

口罩供需資訊平台
https://g0v.hackmd.io/@kiang/mask-info

藥局+衛生所即時庫存 geojson by kiang
https://raw.githubusercontent.com/kiang/pharmacies/master/json/points.json


那今天【iThome 鐵人賽】就介紹到這邊囉~

順帶一提,KT 線上教室,臉書粉絲團,會不定期發佈相關資訊,不想錯過最新資訊,不要忘記來按讚,追蹤喔!也歡迎大家將這篇文章分享給更多人喔。

我們明天再見囉!!!掰掰~


上一篇
Day 4:Kotlin 程式設計基礎入門 (3)
下一篇
Day 6:建立口罩地圖APP專案
系列文
Android 口罩地圖入門實戰 30 天 (使用 Kotlin 程式語言)30

尚未有邦友留言

立即登入留言