如何从url下载图片?
How to download image from url?
我有一个 url:
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: 名称或服务未知。
为什么会这样?完整的link是正确的!
我怎样才能下载这样的文件?
试试这个:
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
注意: 我已从您的 url 中删除了 www
,因为 url 不起作用。 this url 工作正常。
我有一个 url: 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: 名称或服务未知。 为什么会这样?完整的link是正确的! 我怎样才能下载这样的文件?
试试这个:
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
注意: 我已从您的 url 中删除了 www
,因为 url 不起作用。 this url 工作正常。