使用 App Inventor 讀取統一發票中獎號碼
之前我有寫過一篇「使用 App Inventor 讀取 XML 網頁資料」,有讀者說希望可以再多教幾個相關的教學,所以這次我來寫一篇如何讀取統一發票的中獎號碼,這一篇只是單純的爬資料,如果再搭配掃碼元件,就能做成一個兌獎 App 了!
1. 首先在瀏覽器搜尋「統一發票中獎號碼 RSS」
進入網頁後,頁面滑到最下方,並點選「統一發票」。
將網址複製到記事本,等等要設定為網路元件的網址。
讀取的方法,就和之前教的一樣,用找關鍵字的方塊,從最外層的 rss 開始找,再來找 channel,而我們要的資料,是 channel 底下的 item。
這邊可以看到,item 的標籤有很多,而且裡面的資料格式都是重複的,裡面是存放各期的發票中獎號碼;那麼假如我要抓 title 標籤的「110年05月、06」,也是要用 找關鍵字的方塊 ,但是在鍵值的部分,不能直接放剛剛抓到的 item,因為剛剛抓到的 item 有很多,所以要先用 選取清單索引的方塊 ,選擇其中的第幾項後,再放 item 資料。
接著要來撰寫 App
2. 開啟 App Inventor,並新增一個專案「invoice」。
畫面元件如下:(建議用英文版,不然現在有一些方塊無法用!)
切換到程式設計
新增以下程式方塊:
item 變數存放爬到的 item 標籤資料
當讀取按鈕被點選,就設定網路元件的網址,然後執行 GET 請求。
網路元件取得文字後,先判斷回應碼是否為 200 (200 代表成功),如果讀取成功就將爬取到的資料解碼 (要用 XML 解碼),再傳到解析資料副程式。
繼續新增解析資料副程式如下:
解析方法,就跟剛剛講的一樣。
這次的 App 教學就到這,有任何問題都歡迎留言提問!