如何从网址下载图片?

时间:2015-12-04 02:26:43

标签: ruby net-http

我有一个网址: http://limg.imgsmail.ru/splash/v/i/icons.v16.14afed9dda24aad97c9dc5bf24396fbd6ede4e22.png 如果我尝试使用' net / http'

获取此png文件
Net::HTTP.start('www.limg.imgsmail.ru') {|http|
        rest = http.get('/splash/v/i/icons.v16.14afed9dda24aad97c9dc5bf24396fbd6ede4e22.png')
        open('1.png', 'wb') {|file| file.write(rest.body)}
    }

我有一个错误:SocketError:getaddrinfo:名称或服务未知。 为什么会这样?完整的链接是正确的! 我该如何下载这些文件?

1 个答案:

答案 0 :(得分:2)

试试这个:

require "open-uri"

File.open('1.png', 'wb') do |fo|
  fo.write open("http://limg.imgsmail.ru/splash/v/i/icons.v16.14afed9dda24aad97c9dc5bf24396fbd6ede4e22.png").read 
end

注意:我已从您的网址中删除www,因为该网址无效。 this url 工作正常。