我想用Ruby下载这张图片.我怎么做?
http://farm1.static.flickr.com/92/218926700_ecedc5fef7_o.jpg
Run Code Online (Sandbox Code Playgroud)
我正在使用Mac OS.
Geo*_*Geo 54
require "open-uri"
open("your-url") {|f|
File.open("whatever_file.jpg","wb") do |file|
file.puts f.read
end
}
Run Code Online (Sandbox Code Playgroud)
Ste*_*anu 17
尝试使用Mechanize gem:
开始于:sudo gem install mechanize安装Mechanize.
然后:
require 'rubygems'
require 'mechanize'
agent = Mechanize.new
link = 'http://www.asite.com/pic.jpg'
agent.get(link).save "images/pic.jpg"
Run Code Online (Sandbox Code Playgroud)
编辑:为了使事情更清洁,我建议您在保存图像时使用文件名称.我在保存批量图像时遇到了问题,因为它们没有正确格式化.图像保存如下:
#pic.jpg(1)
#pic.jpg(2)
#etc.
Run Code Online (Sandbox Code Playgroud)
这就是为什么你应该使用图像名称作为文件名,如下所示:
agent.get(src).save "images/#{File.basename(url)}"
Run Code Online (Sandbox Code Playgroud)
File.basename采用图片网址,只返回实际的图片名称:
File.basename("http://www.asite.com/pic.jpg")
# returns the image name
pic.jpg
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20684 次 |
| 最近记录: |