# pyCIOT Package Document ## Air Module - **Usage** ```python from pyCIOT.data.air import Air air_module = Air() ``` - **get_source($typ$: str="OBS")** - 回傳民生公共物聯網開放資料平台中,有關空氣品質資料的專案代碼 - Parameters - $typ$: 執行此方法時所欲查詢的專案種類。目前合法的專案種類只有 `OBSERVATION`,其中包含 PM2.5,O3,SO2,NO2... 等感測資料,並無再向下細分。 - 目前合法的代碼為: - `OBS:EPA`: 環保署國家空品測站 - `OBS:EPA_IoT`: 環保署智慧城鄉空品微型感測器 - `OBS:AS_IoT`: 中研院校園空品微型感測器 - `OBS:MOST_IoT`: 科技部智慧園區空品測站 - `OBS:NCNU_IoT`: 暨南大學在地空品微型感測器 - **get_data($src$: str, $stationID$: str=None, $location$=None, $time\_range$=None)** - 回傳各測站的基本資訊,位置及感測資料 - Parameters - $src$: 執行此方法時所欲查詢的專案代碼, e.g. `OBS:EPA`。 - $stationID$: 選擇性參數。若有輸入 $stationID$ 參數,則只輸出 $stationID$ 測站相關的感測資料;若沒有帶入 $stationID$ 參數,則輸出 $src$ 專案中的所有測站的感測資料。 - $location$: 選擇性參數。若有輸入 $location$ 參數,則會依照輸入的位置資訊來獲取距離內的測站。See [Parameters](#Parameters) - $time\_range$: 選擇性參數。若有輸入 $time\_range$ 參數,則會依照輸入的時間資訊來獲取相對應的數據。See [Parameters](#Parameters) #### Example 返回格式為 array,包含一筆或多筆測站相關的感測資料,範例如下: > air_module.get_data("OBS:EPA", stationID="EPA001") ``` [ { "name": "空氣品質測站-基隆", "description": "空氣品質測站-基隆", "properties": { // Props of Thing, its value might not be be same "city": "基隆市", "areaName": "北部空品區", "township": "信義區", "authority": "行政院環境保護署", "stationID": "EPA001", "englishName": "Keelung", "stationName": "基隆", "stationType": "一般測站" }, "data":[ // List all sensing value of Thing { "name":"SO2_AVG", "description":"二氧化硫平均值 SO2", "values":[ { "timestamp":"2022-08-28T12:00:00.000Z", "value":0 } ] }, { "name":"O3", "description":"臭氧 O3", "values":[ { "timestamp":"2022-08-28T12:00:00.000Z", "value":27.1 } ] }, { "name":"PM2.5", "description":"細懸浮微粒 PM2.5", "values":[ { "timestamp":"2022-08-28T12:00:00.000Z", "value":11 } ] }, ... ], "location": { // would be null if any value not exists // e.g. "address": null "latitude": 25.1292, "longitude": 121.7601, "address": "基隆市信義區東信路324號" } } ] ``` - **get_station($source$: str, $stationID$: str=None)** - 回傳各測站的基本資訊及位置 - Parameters - $src$: 執行此方法時所欲查詢的專案代碼, e.g. `OBS:EPA`。 - $stationID$: 選擇性參數。若有輸入 $stationID$ 參數,則只輸出 $stationID$ 測站的相關資料;若沒有帶入 $stationID$ 參數,則輸出 $src$ 專案中的所有測站的相關資料。 #### Example 返回格式為 array,包含一筆或多筆測站的相關資料,範例如下: > air_module.get_station("OBS:EPA") ``` [ { "name": "空氣品質測站-基隆", "description": "空氣品質測站-基隆", "properties": { // Props of Thing, its value depends and might be not same "city": "基隆市", "areaName": "北部空品區", "township": "信義區", "authority": "行政院環境保護署", "stationID": "EPA001", "englishName": "Keelung", "stationName": "基隆", "stationType": "一般測站" }, "location": { // would be null if any of values not exists // e.g. "address": null "latitude": 25.1292, "longitude": 121.7601, "address": "基隆市信義區東信路324號" } }, ... ] ``` ## Water Module - **Usage** ```python from pyCIOT.data.water import Water water_module = Water() ``` - **get_source($typ$: str=None)** - 回傳民生公共物聯網開放資料平台中,有關水文資料的專案代碼 - Parameters - $typ$: 執行此方法時所欲查詢的專案種類。目前合法的專案種類有: - `WATER_LEVEL`: 回傳水位站的專案代碼,目前合法的代碼為: - `WATER_LEVEL:WRA_RIVER`: 水利署河川水位站 - `WATER_LEVEL:WRA_GROUNDWATER`: 水利署地下水位站 - `WATER_LEVEL:WRA2_DRAINAGE`: 水利署(與縣市政府合建)區域排水水位站 - `WATER_LEVEL:IA_POND`: 農田水利署埤塘水位站 - `WATER_LEVEL:IA_IRRIGATION`: 農田水利署農田灌溉圳路水位站 - `GATE`: 回傳閘門的專案代碼,目前合法的代碼為: - `GATE:WRA`: 水利署閘門 - `GATE:WRA2`: 水利署(與縣市政府合建)閘門 - `GATE:IA`: 農田水利署閘門 - `PUMPING`: 回傳抽水站的專案代碼,目前合法的代碼為: - `PUMPING:WRA2`: 水利署(與縣市政府合建)抽水站 - `PUMPING:TPE`: 臺北市抽水站 - `FLOODING`: 回傳淹水感測器的專案代碼,目前合法的代碼為: - `FLOODING:WRA`: 水利署淹水感測器 - `FLOODING:WRA2`: 水利署(與縣市政府合建)淹水感測器 - `POLLUTION`: 回傳汙水感測器的專案代碼,目前合法的代碼為: - `POLLUTION:CPAMI`: 營建署污水感測器 - `None`: 回傳所有合法的代碼 - **get_data($source$: str, $stationID$: str=None, $location$=None, $time\_range$=None)** - 回傳各測站的基本資訊,位置及感測資料 - Parameters - $src$: 執行此方法時所欲查詢的專案代碼, e.g. `WATER_LEVEL:WRA_RIVER`。 - $stationID$: 選擇性參數。若有輸入 $stationID$ 參數,則只輸出 $stationID$ 測站相關的感測資料;若沒有帶入 $stationID$ 參數,則輸出 $src$ 專案中的所有測站的感測資料。 - $location$: 選擇性參數。若有輸入 $location$ 參數,則會依照輸入的位置資訊來獲取距離內的測站。See [Parameters](#Parameters) - $time\_range$: 選擇性參數。若有輸入 $time\_range$ 參數,則會依照輸入的時間資訊來獲取相對應的數據。See [Parameters](#Parameters) #### Example 返回格式為 array,包含一筆或多筆測站相關的感測資料,範例如下: > `water_module.get_data("GATE:WRA", stationID="0b6848c7-0136-4219-a9ff-169860bac96a")` ``` { "name":"0b6848c7-0136-4219-a9ff-169860bac96a", "description":"防洪禦潮", "properties":{ "authority":"第一河川局", "stationID":"0b6848c7-0136-4219-a9ff-169860bac96a", "stationCode":"3132011DR0016", "stationName":"SG16", "authority_type":"水利署" }, "data":[ { "name":"閘門開度", "description":" Datastream_id=86c56759-06b2-48cf-90b3-c71c8e5c48a2, Datastream_FullName=閘門開度, Datastream_Description=防洪禦潮, Datastream_Category_type=閘 門, Datastream_Category=閘門", "values":[ { "timestamp":"2022-08-28T15:15:35.000Z", "value":0 } ] } ], "location":{ "latitude":24.70335, "longitude":121.829536, "address": null } } ``` - **get_station($source$: str, $stationID$: str=None)** - 回傳各測站的基本資訊及位置 - Parameters - $src$: 執行此方法時所欲查詢的專案代碼, e.g. `WATER_LEVEL:WRA_RIVER`。 - $stationID$: 選擇性參數。若有輸入 $stationID$ 參數,則只輸出 $stationID$ 測站的相關資料;若沒有帶入 $stationID$ 參數,則輸出 $src$ 專案中的所有測站的相關資料。 #### Example 返回格式為 array,包含一筆或多筆測站的相關資料,範例如下: > `water_module.get_station("GATE:WRA", stationID="0b6848c7-0136-4219-a9ff-169860bac96a")` ``` { "name":"0b6848c7-0136-4219-a9ff-169860bac96a", "description":"防洪禦潮", "properties":{ "authority":"第一河川局", "stationID":"0b6848c7-0136-4219-a9ff-169860bac96a", "stationCode":"3132011DR0016", "stationName":"SG16", "authority_type":"水利署" }, "location":{ "latitude":24.70335, "longitude":121.829536, "address":"None" } } ``` ## Quake Module - **Usage** ```python from pyCIOT.data.quake import Quake quake_module = Quake() ``` - **get_source($typ$: str="EARTHQUAKE")** - 回傳民生公共物聯網開放資料平台中,有關地震活動資料的所有專案代碼 - Parameters - $typ$: 執行此方法時所欲查詢的專案種類。目前合法的專案種類只有 `EARTHQUAKE` - 因資料儲存方式不同,CWB 及 NCREE 的測站資料無法分別查詢,因此在每個事件中,會回傳來源中所有測站的監測資料,因此目前合法的代碼為: - `EARTHQUAKE:CWB+NCREE`: 中央氣象局與國震中心地震監測站 - **get_data($src$: str, $eventID$: str=None)** - 回傳測站對地震事件的感測資料 - Parameters - $src$: 執行此方法時所欲查詢的專案名稱。 - $eventID$: 選擇性參數。若有輸入 $eventID$ 參數,則輸出第 $eventID$ 號地震的資訊;若沒有帶入 $eventID$ 參數,則輸出所有地震事件的資訊。 #### Example 返回格式為 array,包含一筆或多筆地震事件的感測資料,範例如下: > quake_module.get_data("EARTHQUAKE:CWB+NCREE", "2021001") ``` [ { "name": "第2021001號地震", "description": "第2021001號地震", "properties": { "depth": 15.6, "authority": "中央氣象局", "magnitude": 4.2 }, "data": [ { "name":"地震監測站-Jiqi-EGC", "description":"地震監測站-Jiqi-EGC", "values":[ { "timestamp":"2021-01-06T04:09:10.000Z", "value":"http://140.110.19.16/STA_Earthquake_v2/v1.0/Observations(1)" } ] }, { "name":"地震監測站-Xilin-ESL", "description":"地震監測站-Xilin-ESL", "values":[ { "timestamp":"2021-01-06T04:09:10.000Z", "value":"http://140.110.19.16/STA_Earthquake_v2/v1.0/Observations(2)" } ] }, { "name":"地震監測站-清境國小-105", "description":"地震監測站-清境國小-105", "values":[ { "timestamp":"2021-01-06T04:09:05.000Z", "value":"http://140.110.19.16/STA_Earthquake_v2/v1.0/Observations(3)" } ] }, ... ], "location": { "latitude": 23.79, "longitude": 121.46, "address": null } } ] ``` - **get_station($src$: str, $stationID$: str=None)** - 回傳地震測站的相關資訊 - Parameters - $src$: 執行此方法時所欲查詢的專案名稱。 - $stationID$: 選擇性參數。若有輸入 $stationID$ 參數,則輸出 $stationID$ 地震測站的基本資料;若沒有帶入 $stationID$ 參數,則輸出所有 $source$ 專案中的地震測站的基本資料。 #### Example 返回格式為 array,包含一筆或多筆地震測站的資料,範例如下: > quake_module.get_station("EARTHQUAKE:CWB+NCREE", "ESL") ``` [ { "name": "地震監測站-Xilin-ESL", "description": "地震監測站-Xilin-ESL", "properties": { "authority": "中央氣象局", "stationID": "ESL", "deviceType": "FBA", "stationName": "Xilin" }, "location": { "latitude": 23.812, "longitude": 121.442, "address": null } } ] ``` ## Weather Module - **Usage** ```python from pyCIOT.data.weather import Weather weather_module = Weather() ``` - **get_source($typ$: str=None)** - 回傳民生公共物聯網開放資料平台中,有關氣象資料的專案代碼 - Parameters - $typ$: 執行此方法時所欲查詢的專案種類。目前合法的專案種類有: - `GENERAL`: 回傳氣象站的專案代碼,目前合法的代碼為: - `GENERAL:CWB`: 中央氣象局局屬氣象站 - `GENERAL:CWB_IoT`: 中央氣象局自動氣象站 - `RAINFALL`: 回傳雨量站/雨量感測器的專案代碼,目前合法的代碼為: - `RAINFALL:CWB`:中央氣象局雨量站 - `RAINFALL:WRA`: 水利署雨量感測器 - `RAINFALL:IA`: 農田水利署雨量感測器 - `IMAGE`: 回傳雷達回波圖的專案代碼,目前合法的代碼為: - `IMAGE:CWB`: 中央氣象局雷達整合回波圖 - `None`: 回傳所有合法的代碼 - **get_data($src$: str, $stationID$: str=None, $location$=None, $time\_range$=None)** - 回傳各測站的基本資訊,位置及感測資料 - Parameters - $src$: 執行此方法時所欲查詢的專案代碼, e.g. `GENERAL:CWB`。 - $stationID$: 選擇性參數。若有輸入 $stationID$ 參數,則只輸出 $stationID$ 測站相關的感測資料;若沒有帶入 $stationID$ 參數,則輸出 $src$ 專案中的所有測站的感測資料。 - $location$: 選擇性參數。若有輸入 $location$ 參數,則會依照輸入的位置資訊來獲取距離內的測站。See [Parameters](#Parameters) - $time\_range$: 選擇性參數。若有輸入 $time\_range$ 參數,則會依照輸入的時間資訊來獲取相對應的數據。See [Parameters](#Parameters) #### Example 返回格式為 array,包含一筆或多筆測站相關的感測資料,範例如下: > wather_module.get_data("RAINFALL:CWB", stationID="469020") ``` [ { "name":"雨量站-469020-南沙島", "description":"雨量站-469020-南沙島", "properties":{ "city":"高雄市", "township":"旗津區", "authority":"中央氣象局", "stationID":"469020", "stationName":"南沙島", "stationType":"中央氣象局" }, "data": [ { "name":"HOUR_3", "description":"3小時累積雨量", "values":[ { "timestamp":"2022-08-28T18:50:00.000Z", "value":0.0 } ] }, { "name":"HOUR_12", "description":"12小時累積雨量", "values":[ { "timestamp":"2022-08-28T18:50:00.000Z", "value":8.0 } ] }, { "name":"NOW", "description":"本日累積雨量", "values":[ { "timestamp":"2022-08-28T18:50:00.000Z", "value":0.0 } ] }, { "name":"ELEV", "description":"高度", "values":[ { "timestamp":"2022-08-28T18:50:00.000Z", "value":4.5 } ] }, ... ], "location":{ "latitude":10.3718, "longitude":114.3567, "address":"None" } }, ] ``` - **get_station($src$: str, $stationID$: str=None)** - 回傳各測站的基本資訊及位置 - Parameters - $src$: 執行此方法時所欲查詢的專案代碼, e.g. `GENERAL:CWB`。 - $stationID$: 選擇性參數。若有輸入 $stationID$ 參數,則只輸出 $stationID$ 測站的相關資料;若沒有帶入 $stationID$ 參數,則輸出 $src$ 專案中的所有測站的相關資料。 #### Example 返回格式為 array,包含一筆或多筆測站相關的感測資料,範例如下: > wather_module.get_station("RAINFALL:CWB", stationID="469020") ``` [ { "name":"雨量站-469020-南沙島", "description":"雨量站-469020-南沙島", "properties":{ "city":"高雄市", "township":"旗津區", "authority":"中央氣象局", "stationID":"469020", "stationName":"南沙島", "stationType":"中央氣象局" }, "location":{ "latitude":10.3718, "longitude":114.3567, "address":"None" } } ] ``` ## Disaster Module - **Usage** ```python from pyCIOT.data.disaster import Disaster disaster_module = Disaster() ``` - **get_alert($typ$: str)** - 獲取相關事件的歷史資料 - Parameters - $typ$: 事件代碼。民生公共物聯網資料平台上提供的災情示警共有下列 58 個項目: - 5: 颱風 (中央氣象局) - 6: 地震 (中央氣象局) - 7: 海嘯 (中央氣象局) - 8: 淹水 (水利署) - 9: 土石流 (農委會水土保持局) - 10: 降雨 (中央氣象局) - 11: 河川高水位 (水利署) - 12: 水庫放流 (水利署) - 13: 道路封閉 (交通部公路總局) - 32: 鐵路事故 (台灣高速鐵路股份有限公司) - 33: 停班停課 (行政院人事行政總處) - 34: 鐵路事故 (臺灣鐵路管理局) - 1047: 防空 (內政部警政署民防指揮管制所) - 1051: 雷雨 (中央氣象局) - 1053: 傳染病 (疾病管制署) - 1054: 國際旅遊疫情 (疾病管制署) - 1057: 開放路邊停車 (臺北市政府) - 1059: 水門資訊 (臺北市政府) - 1060: 低溫 (中央氣象局) - 1061: 強風 (中央氣象局) - 1062: 濃霧 (中央氣象局) - 1066: 水位警戒 (臺中市水利局) - 1075: 市話通訊中斷 (國家通訊傳播委員會) - 1076: 行動電話中斷 (國家通訊傳播委員會) - 1078: 空氣品質 (環境保護署) - 1080: 電力中斷 (台灣電力公司) - 1085: 停水 (臺北自來水事業處) - 1087: 火災 (內政部消防署) - 1089: 停水 (台灣自來水公司) - 1091: 水位警示 (桃園市水務局) - 1093: 林火危險度預警 (行政院農業委員會林務局) - 2096: 結構火災 (HEX 瑞德感知) - 2098: 分洪警報 (水利署第十河川局) - 2099: 枯旱預警 (水利署) - 2101: 區排警戒 (臺南市政府) - 2102: 疏散避難 (內政部消防署) - 2104: 輻射災害 (行政院原子能委員會) - 2105: 疫苗供應狀況 (數唯科技有限公司) - 2106: 血液庫存 (襁褓科技股份有限公司) - 2107: 高溫 (中央氣象局) - 2108: 火山 (中央氣象局) - 2109: 道路施工 (臺中市政府建設局) - 2115: 交流道下地方連絡道淹水 (交通部高速公路局) - 2116: 強風管制路段 (交通部高速公路局) - 2118: 海洋污染 (海洋保育署) - 2119: 海灘水質 (海洋保育署) - 2121: 鐵路事故 (阿里山林業鐵路及文化資產管理處) - 2134: 捷運營運 (臺中捷運股份有限公司) - 2135: 捷運營運 (臺北大眾捷運股份有限公司) - 2139: 捷運營運 (高雄捷運股份有限公司) - 2141: 捷運營運 (新北大眾捷運股份有限公司) - 100003: 開放臨時停車 (高雄市政府) - 100005: 水門資訊 (新北市政府) - 100013: 濃霧 (日月潭國家風景區管理處) - 100014: 堰塞湖警戒 (行政院農業委員會林務局) - 100016: 捷運營運 (桃園大眾捷運股份有限公司) - 100018: 國家公園入園示警 (營建署) - 100020: 地下道積淹水 (新竹市政府消防局) #### Example 返回格式為 json,包括該事件的相關示警資訊,範例如下: > disaster_module.get_alert("5") ``` { "id":"https://alerts.ncdr.nat.gov.tw/Json.aspx", "title":"NCDR_CAP-即時防災資訊(Json)", "updated":"2021-10-12T08:32:00+08:00", "author":{ "name":"NCDR" }, "link":{ "@rel":"self", "@href":"https://alerts.ncdr.nat.gov.tw/JSONAtomFeed.ashx?AlertType=5" }, "entry":[ { "id":"CWB-Weather_typhoon-warning_202110102030001", "title":"颱風", "updated":"2021-10-10T20:30:05+08:00", "author":{ "name":"中央氣象局" }, "link":{ "@rel":"alternate", "@href":"https://b-alertsline.cdn.hinet.net/Capstorage/CWB/2021/Typhoon_warnings/fifows_typhoon-warning_202110102030.cap" }, "summary":{ "@type":"html", "#text":"1SEA18KOMPASU圓規2021-10-10T12:00:00+00:0018.20,126.702330992150輕度颱風TROPICAL STORM2021-10-11T12:00:00+00:0019.20,121.902835980220輕度颱風 圓規(國際命名 KOMPASU)10日20時的中心位置在北緯 18.2 度,東經 126.7 度,即在鵝鑾鼻的東南東方約 730 公里之海面上。中心氣壓 992 百帕,近中心最大風速每秒 23 公尺(約每小時 83 公里),相當於 9 級風,瞬間最大陣風每秒 30 公尺(約每小時 108 公里),相當於 11 級風,七級風暴風半徑 150 公里,十級風暴風半徑 – 公里。以每小時21公里速度,向西進行,預測11日20時的中心位置在根據最新資料顯示,第18號颱風中心目前在鵝鑾鼻東南東方海面,向西移動,其暴風圈正逐漸向巴士海峽接近,對巴士海峽將構成威脅。巴士海峽航行及作業船隻應嚴加戒備。第18號颱風外圍環流影響,易有短延時強降雨,今(10日)晚至明(11)日基隆北海岸、宜蘭地區及新北山區有局部大雨發生的機率,請注意。*第18號颱風及其外圍環流影響,今(10日)晚至明(11)日巴士海峽及臺灣附近各海面風浪逐漸增大,基隆北海岸、東半部(含蘭嶼、綠島)、西南部、恆春半島沿海易有長浪發生,前往海邊活動請特別注意安全。*第18號颱風外圍環流影響,今(10日)晚至明(11)日臺南以北、東半部(含蘭嶼、綠島)、恆春半島、澎湖、金門、馬祖沿海及空曠地區將有9至12級強陣風,內陸地區及其他沿海空曠地區亦有較強陣風,請注意。*第18號颱風外圍環流沉降影響,明(11)日南投、彰化至臺南及金門地區高溫炎熱,局部地區有36度以上高溫發生的機率,請注意。*本警報單之颱風半徑為平均半徑,第18號颱風之7級風暴風半徑西南象限較小約60公里,其他象限約180公里,平均半徑約為150公里。" }, "category":{ "@term":"颱風" } }, { "id":"CWB-Weather_typhoon-warning_202110102330001", "title":"颱風", "updated":"2021-10-10T23:26:28+08:00", "author":{ "name":"中央氣象局" }, "link":{ "@rel":"alternate", "@href":"https://b-alertsline.cdn.hinet.net/Capstorage/CWB/2021/Typhoon_warnings/fifows_typhoon-warning_202110102326.cap" }, "summary":{ "@type":"html", "#text":"2SEA18KOMPASU圓規2021-10-10T15:00:00+00:0018.50,125.502330992180輕度颱風TROPICAL STORM2021-10-11T15:00:00+00:0019.00,120.902835980250輕度颱風 圓規(國際命名 KOMPASU)10日23時的中心位置在北緯 18.5 度,東經 125.5 度,即在鵝鑾鼻的東南方約 610 公里之海面上。中心氣壓 992 百帕,近中心最大風速每秒 23 公尺(約每小時 83 公里),相當於 9 級風,瞬間最大陣風每秒 30 公尺(約每小時 108 公里),相當於 11 級風,七級風暴風半徑 180 公里,十級風暴風半徑 – 公里。以每小時24公里速度,向西進行,預測11日23時的中心位置在北緯 19.0 度,東經 120.9 度,即在鵝鑾鼻的南方約 320 公里之海面上。根據最新資料顯示,第18號颱風暴風圈稍擴大,目前中心在鵝鑾鼻東南方海面,向西移動,其暴風圈正逐漸朝巴士海峽接近,對巴士海峽及東沙島海面將構成威脅。巴士海峽及東沙島海面航行及作業船隻應嚴加戒備。第18號颱風外圍環流影響,易有短延時強降雨,今(10日)晚至明(11)日宜蘭縣有局部大雨或豪雨發生的機率,基隆北海岸、大臺北地區及花蓮地區有局部大雨發生的機率,請注意。*第18號颱風及其外圍環流影響,今(10日)晚至明(11)日巴士海峽及臺灣附近各海面風浪逐漸增大,基隆北海岸、東半部(含蘭嶼、綠島)、西南部、恆春半島沿海易有長浪發生,前往海邊活動請特別注意安全。*第18號颱風外圍環流影響,今(10日)晚至明(11)日臺南以北、東半部(含蘭嶼、綠島)、恆春半島、澎湖、金門、馬祖沿海及空曠地區將有9至12級強陣風,內陸地區及其他沿海空曠地區亦有較強陣風,請注意。*適逢大潮,漲潮期間不利雨水排放,沿海低窪地 區需留意積淹水。 *第18號颱風外圍環流沉降影響,明(11)日南投、彰化至臺南及金門地區高溫炎熱,局部地區有36度以上高溫發生的機率,請注意。*本警報單之颱風半徑為平均半徑,第18號颱風之7級風暴風半徑西南象限較小約60公里,其他象限約220公里,平均半徑約為180公里。" }, "category":{ "@term":"颱風" } }, ... ] ``` - **get_notice($typ$: str)** - 獲取相關事件的歷史資料 - Parameters - $typ$: 事件代碼。目前民生公共物聯網資料平台上提供的災情通報共計有下列 41 個項目: - 'CEOCopen': 中央災害應變中心目前開設的專案及成立情形 - 'Disaster': 災情案件資料 - 'Shelter': 避難收容處所開設情形 - 'EMIC_Resource': 救災資源資料清單 - 'EvaculateArea': 撤離區域劃定清單 - 'ERA2_A1': 各直轄市縣市政府災情通報表 - 'ERA2_A2': 警戒區域劃定通報表 - 'ERA2_A3': 出動救災人員及裝備通報表 - 'ERA2_A4': 各直轄市縣市政府撤離人數通報表 - 'ERA2_B1': 環境保護工程設施災情通報表 - 'ERA2_C1': 農林漁牧產物及民間設施災情通報表 - 'ERA2_C2': 農林漁牧業產物公共設施災情通報表 - 'ERA2_C3': 颱風過境大陸船員進港或上岸避風通報表 - 'ERA2_C4': 土石流警戒區發布情形通報表 - 'ERA2_D1': 醫療機構災情通報表 - 'ERA2_D2': 緊急醫療救護通報表 - 'ERA2_D3': 各直轄市縣市政府避難收容處所開設通報表 - 'ERA2_D4': 災區志工人力志工服務通報表 - 'ERA2_E1': 公用天然氣事業災情通報表 - 'ERA2_E2': 台灣電力公司災情通報表 - 'ERA2_E3': 自來水相關機構災情通報表(災損部分) - 'ERA2_E4': 自來水相關機構災情通報表(受損用戶) - 'ERA2_E5': 災情通報表(水庫或堰壩) - 'ERA2_E6': 災情通報表(河川、海岸、區域排水) - 'ERA2_E7': 工業區災情通報表 - 'ERA2_E8': 加工出口區災情通報表 - 'ERA2_E9': 商業災損災情通報表 - 'ERA2_F1': 交通災情通報表(道路、橋梁部分) - 'ERA2_F2': 交通災情通報表(鐵路部分) - 'ERA2_F3': 交通災情通報表(航空部分) - 'ERA2_F4': 交通災情通報表(港埠及海運部分) - 'ERA2_F5': 交通災情通報表(觀光部分) - 'ERA2_F6': 交通災情通報表(郵政部分) - 'ERA2_F7': 交通災情通報表(施工中工程災害及其他) - 'ERA2_F8': 交通災情通報表(救災準備之人力、機具) - 'ERA2_G1': 教育部各級學校、社教館所災情通報表 - 'ERA2_H1': 國家搜救指揮中心支援空中救援勤務通報表 - 'ERA2_J1': 電信事業災情通報表 - 'ERA2_J2': 電信事業災情通報表(受損用戶 - 市話) - 'ERA2_J3': 電信事業災情通報表(受損基地台 - 行動電話) - 'ERA2_K1': 災情通用通報表 #### Example 返回格式為 json,包括該事件的相關通報資訊,範例如下: > disaster_module.get_notice("ERA2_F1") ``` "maincmt":{ "prj_no":"專案代號", "org_name":"填報機關", "rpt_approval":"核定人", "rpt_phone":"聯絡電話", "rpt_mobile_phone":"行動電話", "rpt_no":"通報別", "rpt_user":"通報人", "rpt_time":"通報時間" }, "main":{ "prj_no":"2014224301", "org_name":"交通部公路總局", "rpt_approval":"test", "rpt_phone":"0911", "rpt_mobile_phone":"0900000000", "rpt_no":"7", "rpt_user":"test", "rpt_time":"2021-10-12T01:24:12.0000000+08:00" }, "detailcmt":{ "trfstatus":"狀態", "roadtype_id":"道路分類代碼", "road_id":"道路代碼", "startmile":"路段起始里程", "startplus":"路段起始(+)", "endmile":"路段結束里程", "endplus":"路段結束(+)", "linecode":"路線樁號/路名", "city_id":"縣市ID", "city_name":"縣市別", "town_id":"鄉鎮ID", "town_name":"鄉鎮別", "addname":"附近地名", "wgs84_x":"災害地點(WGS84)_經度", "wgs84_y":"災害地點(WGS84)_緯度", "wgs84_x_sctl":"前管制點(WGS84)_經度", "wgs84_y_sctl":"前管制點(WGS84)_緯度", "wgs84_x_ectl":"後管制點(WGS84)_經度", "wgs84_y_ectl":"後管制點(WGS84)_緯度", "close_type":"後管制點(WGS84)_緯度", "close_tsub":"交通阻斷原因類別_原因", "close_datetime":"阻斷封閉時間", "repaire_datetime":"預計搶通時間", "close_text":"受損狀況", "repaire_text":"搶修中作為", "alt_route":"搶修中作為", "build_cost":"復建及搶修概估經費(千元)", "open_text":"交管措施", "open_datetime":"實際搶通(開放)時間", "remark":"備註", "brg_close":"備註", "no_data_mark":"無資料可填寫" }, "detail":[ { "trfstatus":"D0", "roadtype_id":"國道", "road_id":"00001A", "startmile":"0", "startplus":"0", "endmile":"0", "endplus":"0", "linecode":"國道1號汐止五股高架道路 0K + 0 ~ 0K + 0", "city_id":"10004", "city_name":"新竹縣", "town_id":"1000402", "town_name":"竹東鎮", "addname":"新竹縣竹東鎮", "wgs84_x":"121.0753632", "wgs84_y":"24.73075802", "wgs84_x_sctl":"None", "wgs84_y_sctl":"None", "wgs84_x_ectl":"None", "wgs84_y_ectl":"None", "close_type":"道路", "close_tsub":"None", "close_datetime":"", "repaire_datetime":"2021-10-20T12:00:20.0000000+08:00", "close_text":"aaa", "repaire_text":"aaa", "alt_route":"None", "build_cost":"11", "open_text":"None", "open_datetime":"", "remark":"None", "brg_close":"N", "no_data_mark":"None" }, { "trfstatus":"D0", "roadtype_id":"國道", "road_id":"000010", "startmile":"0", "startplus":"0", "endmile":"0", "endplus":"0", "linecode":"國道1號 0K + 0 ~ 0K + 0", "city_id":"65", "city_name":"新北市", "town_id":"6500100", "town_name":"板橋區", "addname":"新北市板橋區", "wgs84_x":"121.4579675", "wgs84_y":"25.01186453", "wgs84_x_sctl":"None", "wgs84_y_sctl":"None", "wgs84_x_ectl":"None", "wgs84_y_ectl":"None", "close_type":"道路", "close_tsub":"None", "close_datetime":"", "repaire_datetime":"2021-10-27T12:00:27.0000000+08:00", "close_text":"test不明原因封閉", "repaire_text":"test", "alt_route":"None", "build_cost":"10", "open_text":"加強人力", "open_datetime":"", "remark":"None", "brg_close":"N", "no_data_mark":"None" }, { "trfstatus":"D0", "roadtype_id":"市區道路", "road_id":"None", "startmile":"", "startplus":"", "endmile":"", "endplus":"", "linecode":"None", "city_id":"65", "city_name":"新北市", "town_id":"6502600", "town_name":"貢寮區", "addname":"新北市貢寮區", "wgs84_x":"121.9182466", "wgs84_y":"25.02485641", "wgs84_x_sctl":"None", "wgs84_y_sctl":"None", "wgs84_x_ectl":"None", "wgs84_y_ectl":"None", "close_type":"其他", "close_tsub":"其他", "close_datetime":"2021-10-11T06:09:11.0000000+08:00", "repaire_datetime":"", "close_text":"大水來了", "repaire_text":"None", "alt_route":"None", "build_cost":"", "open_text":"None", "open_datetime":"", "remark":"None", "brg_close":"N", "no_data_mark":"None" }, { "roadtype_id":"市區道路", "block_total":"1", "unblock_count":"0", "block_count":"1", "stop_total":"0", "unstop_count":"0", "stop_count":"0", "comment":"市區道路主管機關係內政部(營建署)" }, { "roadtype_id":"原住民族地區部落主要聯外道路", "block_total":"0", "unblock_count":"0", "block_count":"0", "stop_total":"0", "unstop_count":"0", "stop_count":"0", "comment":"原住民族地區部落主要聯外道路主管機關係原住民族委員會" }, ... ] } ``` ## CCTV Module - **Usage** ```python from pyCIOT.data.cctv import CCTV cctv_module = CCTV() ``` - **get_source($typ$: str="IMAGE")** - 回傳民生公共物聯網開放資料平台中,有關測站影像資料的專案代碼 - Parameters - $typ$: 執行此方法時所欲查詢的專案種類。目前合法的專案種類只有 `IMAGE` - 目前合法的代碼為: - `IMAGE:EPA`: 環保署空品監測即時影像器 - `IMAGE:WRA`: 水利署水利防災用影像器 - `IMAGE:COA`: 行政院農委會土石流觀測站影像 - **get_data($src$: str, $location$=None, $time\_range$=None)** - 回傳各測站的基本資訊,位置及影像存取網址 - Parameters - $src$: 執行此方法時所欲查詢的專案代碼, e.g. `IMAGE:EPA`。 - $location$: 選擇性參數。若有輸入 $location$ 參數,則會依照輸入的位置資訊來獲取距離內的測站。See [Parameters](#Parameters) - $time\_range$: 選擇性參數。若有輸入 $time\_range$ 參數,則會依照輸入的時間資訊來獲取相對應的數據。See [Parameters](#Parameters) #### Example 返回格式為 array,包含一筆測站及影像的相關資料,範例如下: > cctv_module.get_data("IMAGE:EPA") ``` [ { "name": "環保署空品監測即時影像器-基隆", "description": "環保署-基隆-空品監測即時影像器", "properties": { "city": "基隆市", "basin": "北部空品區", "authority": "環保署", "stationName": "基隆", "CCDIdentifier": "1" }, "data":[ { "name":"即時影像", "description":"環保署-基隆-空品監測即時影像器", "values":[ { "timestamp":"2022-06-13T09:00:00.000Z", "value":"https://airtw.epa.gov.tw/AirSitePic/20220613/001-202206131700.jpg" } ] } ], "location":{ "latitude":25.129167, "longitude":121.760056, "address":"None" } }, ... ] ``` ## Parameters - **location** - e.g. 找出距離座標 (25.129167, 121.760056) 方圓 3KM 內的所有測站 ``` { latitude: 25.129167, longitude: 121.760056, distance: 3 } ``` - **time_range** - e.g. 找出測站中 2022-01 中最新的 10 筆資料 ``` { start: "2022-01-01T00:00:00Z" end: "2022-01-31T23:59:59Z" num_of_data: 10 } ```