分類
懶得分類

Google天氣API失效?!

之前一直用的好好的 Google 天氣 API, 今天同事回報異常, 經檢查後, 發現看起來是 Google 的問題, 不過回覆的訊息讓人摸不著頭緒, 如下:

(訪問 http://www.google.com/ig/api?hl=zh-tw&weather=taipei 的結果)

起先以為是用量過多爆了, 不過查了一下, 發現應該不是, 而且也找到相關的新聞訊息: http://thenextweb.com/google/2012/08/28/did-google-just-quietly-kill-private-weather-api/ 看起來應該是 Google 打算關掉的服務引起的, 而且上面的 copyright 還是 2009, 真是怪怪的.

接下來只好轉換用其他家的 weather api, 原本要用 http://www.wunderground.com/ 這家的, 但是是要收費的, 只好再找, 改用 yahoo 的, 參考 API 介紹: http://developer.yahoo.com/weather/ , 應用起來, 原本 Google Weather API 有的資訊他也都有, 只是都是英文的, 不過倒也不影響使用.

不過若是不知道地點的 w 代碼(WOEID), 可以先到 yahoo weather 上查: http://weather.yahoo.com/ 輸入 taipei, 將會重導到網址: http://weather.yahoo.com/taiwan/null/taipei-2306179/ 就知道 w 代碼是 2306179, 而 API URL 就會是: http://weather.yahooapis.com/forecastrss?w=2306179 預設氣溫單位是華氏, 若是要氣溫單位, 再多加參數 u=c 如: http://weather.yahooapis.com/forecastrss?w=2306179&u=c

回應的內容也都是 xml 格式, 可以容易利用程式實作取出, 花了幾十分鐘的時間, 把原來的 api 由 Google 改到 Yahoo 完成.

附上部分台灣的 WOEID:

2306155 Yungkang City, TW (永康市)
2306179 Taipei City, TW (台北市)
2306180 Kaohsiung City, TW (高雄市)
2306181 Taichung City, TW (台中市)

分類
Javascript

多個檔案上傳-multiple upload with HTML5

在以往 form 中使用上傳元件, 只能做單檔上傳, 一個 input type=file 只能做一個檔案, 若是需要做多個檔案同時上傳, 得需要使用多組 input type=file 或是利用 flash 來達成.

不過在 HTML5 中, 定義了 multiple 屬性, 讓 input type=file 可以同時傳上來多個檔案. 來看看用法吧.

<form method=post enctype='multipart/form-data'>
file(s):<input type="file" name=ufile id=ufile multiple />
<input type="submit" value="upload" / >
</form>

就這麼簡單, 在原來的 input type=file 多加個 multiple 即可, 這樣功能就可以達成多個檔案上傳了, 不過若是要限制檔案數, 就得要用 client javascript 來進行檢查, 在 onsubmit 時, 做個數檢查即可.

接下來就看範例囉, 放在這裡: http://sample.diary.tw/28/lm.php

這個範例利用了 file 及 size 屬性將上傳檔案的檔名及大小列出來, 不過不會上傳, 不用擔心, 純在客戶端執行的!

Facebook在Alexa上超越Google

最近的 Alexa 流量有排行變動了, 久居第一的 Google 於 8/2, 8/3間的到訪量被 Facebook 超越了, 真的有意思呢, 來看看圖表:

(圖表資料引用自 http://www.alexa.com/)

其他的前幾名不動, 不過拉開時間看一下,

(圖表資料引用自 http://www.alexa.com/)

似乎前面的到訪規則有些調整, 無論如何, 這個網路排行榜, 對應的網路世界競爭, 真的很激烈呢!