pCloud Partner Program

Yahoo天氣RSS API需要驗證

程式技術 2016/05/18 15:16
views: 52295 times
之前的一個使用天氣 API 的專案, 因為 Yahoo RSS API 需要驗證, 變成非公開性的 API, 例如:

http://weather.yahooapis.com/forecastrss?u=c&w=2306179

目前會回覆:
Please provide valid credentials. OAuth oauth_problem="OST_OAUTH_PARAMETER_ABSENT_ERROR", realm="yahooapis.com"

而無法順利取得內容, 經查找相關資料, 應該是 3/15 起, yahoo 這組 API 需要做驗證才能使用, 於是找了資料, 可以改用 YQL 的方式來查詢, 相容的查詢指令如下:

http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20weather.forecast%20where%20%20u=%22c%22%20and%20woeid%20=2306179

其中的 YQL 為:

select * from weather.forecast where u="c" and woeid=2306179

即可獲得相容的天氣 API 回傳結果.

參考之前文章:
http://diary.tw/tim/1007

top
TAG api, Weather, yahoo, YQL

YQL for flickr的問題

程式技術 2011/10/04 18:13
views: 97757 times
之前寫了一篇利用 YQL 查詢 setid 取出 flickr 中的照片功能: http://diary.tw/tim/898

不過最近似乎是失效了, 檢查一下, 發現 YQL 只會回傳 flickr 的 api url, 而不主動回傳 photos 的內容, 訪問該 flickr api url:

http://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&photoset_id={set_id}&page=1&per_page=10

會回傳:

<rsp stat="fail">
  <err code="100" msg="Invalid API Key (Key has invalid format)"/>
</rsp>

所以只好來去申請 flickr 的 api key, 才能查詢了. 不過這樣就不用透過 YQL 了, 直接向 flickr api 取出內容即可. 申請的網址在這裡: http://www.flickr.com/services/api/keys/ , (有分兩種, free 及 commercial 的, 請依開發用途申請即可) 申請好了之後, 可以直接從該 api 服務介紹來查找這個由 setid 找出照片服務, 不過已經知道由 YQL 給的 flickr api url 了, 所以再掛上 api key 就可以順利輸出結果了, 如下:

http://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&api_key={api_key}&photoset_id={set_id}&format=rest

輸出結果如下:

如此一來, 又能順利正常工作啦, 網址不變, 仍在這裡: http://sample.diary.tw/flickrset/ 請多加利用!!
top
TAG api, flickr, YQL

利用YQL對flickr單一相片取出對應網址

好用軟體 2011/03/07 23:30
views: 154636 times
這個是繼之前 flickrset 取出整本相簿工具後的另一個小小的 flickr 應用.

一般利用 flickr 來當 blog 圖床應用很多, 不過常常看到圖, 但想要找出來在原來 flickr 的哪裡, 所屬哪個 user 或哪個相簿的查找不是很容易, 利用 YQL 的 flickr.photos.info 這個 table 可以查找出來 photo_id 對應的 url, 進而找出來圖片的來源, 及原來所屬的上傳者, 例如:

http://farm4.static.flickr.com/3542/35450735270_82b8e9945c_z.jpg

這張相片, 上面的 photo_id 為 35450735270, 帶入 YQL 利用這個查詢指令:

select urls from flickr.photos.info where photo_id='3545073570'

後, 可以查出以下結果:

http://developer.yahoo.com/yql/console/#h=select%20urls%20from%20flickr.photos.info%20where%20photo_id%3D%273545073570%27



其中的 http://www.flickr.com/photos/okilyt/3545073570/ 就是原來的相片在 flickr 內的 url 了, 連回去看, 就能找出上傳者及對應相簿了, 方便大家使用.

已實作好的工具 url 在這裡: http://sample.diary.tw/flickrphoto/ , 只需要填入圖片連結, 無論是大圖小圖縮圖都可以, 程式自動會判定 photo_id, 並帶入 YQL 後查詢出來在 flickr 內的連結, 大家可以試看看.

[2011/10/6 15:00]已改為使用 flickr api 了, 因為 YQL 直接提供資料輸出, 請參考這篇: http://diary.tw/tim/964
top
TAG flickr, info, photo, YQL

利用YQL抓出Flickr相簿中的照片url

程式技術 2010/08/06 19:27
views: 255503 times
在 Flickr 中, 有許多照片(廢話), 而這些照片, 也有放在相簿集(set)裡, 如何把相簿集裡的相片的 url 取出來呢?

首先我們先來看一個工具, 叫做 YQL (Yahoo! Query Language): http://en.wikipedia.org/wiki/Yahoo!_query_language , 這個語言是望文生義, 就是用來進行查詢 Yahoo! 服務的語言, 而我們需要的功能, 剛好裡面有提供, 所以我們就利用這個查詢語言來進行查詢, 先來看看語法, 到這個 YQL Console 來看: http://developer.yahoo.com/yql/console/

來到這裡, 真是開發者的天堂, Yahoo! 的服務查詢, 這裡幾乎都有提供, 而今天我們要查找的正是這個 table: flickr.photosets.photos, 假設今天要查的 photo set 是這個 url: http://www.flickr.com/photos/okilyt/sets/72157600079438372/, 則 set_id 就是 72157600079438372, 於是輸入如下的語法:

select * from flickr.photosets.photos where photoset_id = 72157600079438372

就會生出如下的 xml:


真是方便耶, 不過筆數好像只有十筆, 全部應該要有 18筆才對, 所以查了一下資料, http://developer.yahoo.com/yql/guide/paging.html , 發現可以在 table 後方加上 (0) 來進行全部查出, 於是調整一下語法如下:

select * from flickr.photosets.photos(0) where photoset_id = 72157600079438372

就可以方便地把整個 photo set 中的相片查找出來了, 而相片的 url 就可以利用這些 xml 來組合出來, 語法如下:

http://farm[farm].flickr.com/[server]/[id]_[secret].jpg

很容易吧! 這樣一來, 要取出某相簿的照片 url 就方便多了, 寫成小工具, 放在這裡: http://sample.diary.tw/flickrset/

參考資料: http://www.nakedtechnologist.com/?p=476

top




Nextbit Robin 5.2吋六核心智慧型手機 Microsoft Office 365 中文家用版PKC (無光碟)
ASUS華碩 AC1900 雙頻無線路由器 RT-AC68U 美國 VORNADO 533 渦流空氣循環機 (黑色)
御茶園 每朝健康綠茶(650mlx24入) 每朝健康 雙纖綠茶(650mlx24入)


 Waiting...