昨日のエントリRubyでTumblrにアクセスする(tumblr_client)では、tumblr_client
の使い方を簡単に説明した。続いて、今日はtumblrに画像を投稿してみよう。
テキストの投稿はtext()
で行ったが、画像の投稿はphoto()
を使う。photo()
を使う場合は、ローカルのファイルをアップロードする方法と、ネットで公開されている画像を取り込ませる2通りの方法がある。
ローカルのファイルをアップロードする
まずローカルのファイルをTumblrにアップロードしたい場合だ。この場合、photo()
のハッシュ引数に、キーに:data
を、値に画像へのパス指定した要素を渡してやる。例は下記のとおりで、/path/to/photo.jpgがアップロードされる。
require 'tumblr_client'
Tumblr.configure do |config|
config.consumer_key = "ABC..."
config.consumer_secret = "DEF..."
config.oauth_token = "GHI..."
config.oauth_token_secret = "JKL..."
end
client = Tumblr::Client.new
client.photo("hogehoge.tumblr.com", {:data => '/path/to/photo.jpg', :caption => "Hello, World!"})
ネットで公開されている画像を取り込ませる
次にネットで公開されている画像をTumblrに取り込みたい場合だ。photo()
のハッシュ引数に、今度はキーに:source
を、値に画像へのURLを指定した要素を渡してやる。以下の例ではhttp://www-2.cs.cmu.edu/~chuck/lennapg/lena_std.tifがTumblrに取り込まれる。余談だが、この画像はかの有名なレナのものだ。これを実行してダッシュボードを確認すれば、彼女が笑顔を向けてくれることだろう。
require 'tumblr_client'
Tumblr.configure do |config|
config.consumer_key = "ABC..."
config.consumer_secret = "DEF..."
config.oauth_token = "GHI..."
config.oauth_token_secret = "JKL..."
end
client = Tumblr::Client.new
client.photo("hogehoge.tumblr.com", {:source => 'http://www-2.cs.cmu.edu/~chuck/lennapg/lena_std.tif', :caption => "Lena"})