iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 20
0
自我挑戰組

從積木開始學程式系列 第 20

[DAY>20<]什麼?我也可以做出查詢公車的APP?--(PTX平台的認識)

昨天有提到PTX是交通部提供的一個"公共運輸整合資訊流通服務平臺"

你看看不管是航空、高鐵、捷運、台鐵、公車、自行車都包含在這個平台裡面
https://ithelp.ithome.com.tw/upload/images/20181104/20108017hLgBqc9LWb.png

使用的是OData,然後還提供了好用的API供大家使用,對於開發者來說是不錯的選擇!
直接呼叫API就可以取得我們需要的大眾運輸資訊,這真是很方便的平台~

PTX提供的API可以在這邊看到:
https://ptx.transportdata.tw/MOTC
https://ithelp.ithome.com.tw/upload/images/20181104/20108017BBDbWgFzle.png

在這邊我們先簡單做個小範例,
例如我們今天想要查詢客運公車(9003)這班公車的話,
我們先找到 "InterCityBusApi" 這個標籤
並且看到從上數來第二個API
"GET /v2/Bus/RealTimeByFrequency/InterCity/{RouteName}
取得指定[路線名稱]的公路客運動態定時資料(A1)
"
https://ithelp.ithome.com.tw/upload/images/20181104/20108017NqpygGwIB6.png

轉到下方我們會看到有一個可以試試看的地方
我們要找尋9003這一班客運公車的資訊
我們就要在"RouteName"的Value欄位內輸入"9003"
然後再點下 Try it out!
https://ithelp.ithome.com.tw/upload/images/20181104/201080172JSnlrY6dr.png

就會看到結果出現在下面的 Response Body 地方,
但是因為我們要整合到app上,所以我們直接取得他的網址
這時候我們要看到的是 Request URL 的部分
https://ithelp.ithome.com.tw/upload/images/20181104/20108017hr2Sa8krX3.png

這是他的網址
https://ptx.transportdata.tw/MOTC/v2/Bus/RealTimeByFrequency/InterCity/9003?$top=30&$format=JSON
可以從網址看到
我們可以將網址中9003部分隨意更改為想要查的客運公車編號,
然後就可以取得到我要的那個公車路線資訊及即時公車狀態。
網址開啟後的網頁內容就全部是Json格式編排的文字檔
https://ithelp.ithome.com.tw/upload/images/20181104/20108017cqxySh7HWO.png

但是資料看起來很複雜嗎?
沒關係在上面的部分就有了哪個參數給的是什麼資料
https://ithelp.ithome.com.tw/upload/images/20181104/20108017P2NLtYhAg2.png

交通部提供的API參考文件內也可以看到要使用什麼運算子才能來篩選資料

https://ithelp.ithome.com.tw/upload/images/20181104/20108017W16qMLKfLn.png

今天PTX簡單使用就介紹到這邊喔~明天繼續^_^


上一篇
[DAY>19<]接下來幾天利用Web API 來取得網頁資料
下一篇
[DAY>21<]什麼?我也可以做出查詢公車的APP?--(利用WebAPI抓資料)
系列文
從積木開始學程式30

尚未有邦友留言

立即登入留言