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
で開いたファイルに流し込みます。