web画像をflickrに保存してみる by ruby
最近、無料で1TB容量の提供 (「6.5Mピクセル写真にして53万7731枚」)になったflickrにweb画像を保存してみた
まずは、flickrのアカウント取得後、ここから
http://www.flickr.com/services/apps/create/apply/
keyとsecretを取得してflickrawをインストール
gem install flickraw
hanklords/flickraw · GitHubを参考に
このスクリプト実行してoauth_tokenとoauth_token_secretを取得
require 'flickraw' FlickRaw.api_key="... Your API key ..." FlickRaw.shared_secret="... Your shared secret ..." token = flickr.get_request_token auth_url = flickr.get_authorize_url(token['oauth_token'], :perms => 'delete') puts "Open this url in your process to complete the authication process : #{auth_url}" puts "Copy here the number given when you complete the process." verify = gets.strip begin flickr.get_access_token(token['oauth_token'], token['oauth_token_secret'], verify) login = flickr.test.login puts "You are now authenticated as #{login.username} with token #{flickr.access_token} and secret #{flickr.access_secret}" rescue FlickRaw::FailedResponse => e puts "Authentication failed : #{e.msg}" end
できたー。簡単
require 'flickraw' require 'open-uri' FlickRaw.api_key = API_KEY FlickRaw.shared_secret = SHARED_SECRET flickr.access_token = ACCESS_TOKEN flickr.access_secret = ACCESS_SECRET login = flickr.test.login url="http://hoge.com/hoge.jpg" path="tmp.jpg" open(path, 'wb') do |output| open(url) do |data| output.write(data.read) end end photo_id = flickr.upload_photo path, :title => path info = flickr.photos.getInfo(:photo_id => photo_id) p FlickRaw.url(info)
参考
hanklords/flickraw · GitHub
[Gem] FlickrawでFlickrに画像を簡単アップロード/ダウンロード [Rails] - 酒と泪とRubyとRailsと