500px Popular Wallpapers 的 Feed 和 Fetcher

雖然 Flickr Interestingness 裡收錄的照片已經很不錯了,但就我個人的偏好,還是喜歡 500px 多一些,今天又花了一點時間,把 500px Popular 的大圖 RSS feed 還有 Mac 上要用的抓檔 script 生出來。

RSS Feed

500px 本身就有提供 popular 相片集的 rss feed,但裡面連結的照片解析度並不足以做為 wallpaper (長邊只有 900px),不過因為它的圖片命名有一定的原則,所以稍微修改一下 url,還是可以拿到最高到 2048px 的圖檔,這個部分還是透過 Yahoo Pipes 來做:500px Popular Wallpapers

在 Windows 環境中,要定期更換照片,可以搭配 John’s Background Switcher,用「以 Flickr Interestingness 相片集定時變換 Windows 桌面」的方法設定。因為在測試的時候似乎有一些不明原因的問題,所以這個 Pipes 生出來的 RSS 我再用 FeedBurner 燒過,位址為: http://feeds.feedburner.com/500pxPopularWallpapers

Wallpaper Fetcher

如果使用官方 rss feed 來取照片,最多只能拿到 20 張,所以在 Mac 上我決定用它的 API,這樣在不分頁的狀態下,一次可以取到 100 張的相片,比較方便些。

如果要用 API,必須先到開發中心去註冊一組 Application,取得 consumer_keyconsumer_secret,(但只會用到 key)。

官方 API 提供的範例程式有 JavaScript, iOS, Ruby, PHP,雖然有第三方包好的 python 版本,但我直接拿 Ruby 的 example 來修改完成這個 script。它會將目錄下先前從 500px 取回來的照片刪除,然後根據目前的 popular photos,抓取最新的 100 張回來,再根據照片的解析度,目前設定長邊至少要有 1920px,再予以保留:

(註:上列程式請填入自己申請的 key。另外,會運用到非 ruby 內建的 gem: image_size,請先安裝。)