COSCUP 2015 Workshop 採用 KKTIX 報名,場次不少,我們自然也挺關心每個場次的報名狀況(關係到我們是否要針對特定族群再加以宣傳)。由於每場的 KKTIX 活動頁面都選用同樣的佈景主題,也都公開顯示報名狀況,於是即使沒有提供 API,也可以很容易用 Google Spreadsheet 的 ImportXML 函式快速製作出綜合每個場次報名狀況的一覽表。
ImportXML 可以接兩個參數:
- 要讀入的 XML 網址
- XLink query,用以指明需要顯示的資料
以迅速爆滿、由 d3js.tw 成員慕約帶來的「第一次自幹 Open Data SimCity 就上手」為例,其網址為 http://coscup2015.kktix.cc/events/opendata-simcity ,而查閱原始碼可知,記載人數的 node 為「<span class="info-count">」的內容,於是 XLink 就可寫作 //span[@class='info-count'] 。
那麼只要在 Google Spreadsheet 的某個儲存格打入下列公式:
=IMPORTXML("http://coscup2015.kktix.cc/events/opendata-simcity", "//span[@class='info-count']")
就會讀入現有的報名人數及總名額,接著再用一些文字操作的函式,也就能順利把數字部分都讀出來。於是只要搭配一點點變化,就可以做出這樣的表格:
另外再做點美化,發布為 HTML 後,就成了人人可看的狀態一覽表:
其實若要自己看,也不盡然得發布為 HTML,但發布後搭配 Mac OS 的 Safari 「在 Dashboard 裡打開的功能」,那就能把這個頁面變成方便查閱的 Dashboard 小工具了:
Google Spreadsheet 還有另外提供 ImportHTML 這類的函式,但主要是用來讀取表格;如果像這種只要取幾個節點或一份清單的狀況,有鑒於 HTML 也是一種 XML,Google Spreadsheet 可以正確讀入沒有問題,還是 ImportXML 會方便點。
不免俗也是要廣告一下:COSCUP 2015 Workshop結合 15 個社群傾力演出,陣容堅強內容充實,絕大部份為免費參加。歡迎大家一起來唷 :)
Our mortgage calculator contains Nova Scotia current rates on mortgages rising, so that you can determine your monthly payments. mortgage payment calculator Reverse mortgage loans enable borrowers to utilize various financing strategies depending on his or her circumstances and needs. mortgage payment calculator
回覆刪除