Rubyで画像をダウンロードするにはopen-uriを使います。
ダウンロードの仕方
open-uriのopenメソッドを使います。仮想のURL http://example.com/example.jpg をダウンロードする例。
require "open-uri"image = open("http://exmple.com/example.jpg")
ダウンロード後にファイルに保存する方法
次のように、バイナリモードで開いたファイルに保存します。
require "open-uri"open("http://exmple.com/example.jpg") { |image|File.open("something.jpg","wb") do |file| file.puts image.read end }
解説
openの戻り値(TempFileクラス)をimageに格納します。File.openをwb引数付きで呼びsomething.jpgファイルをバイナリモードで開きます。- 画像データを
image.readで取り出し、file.putsで開いたファイルに流し込みます。