从解析响应中获取图像

时间:2014-11-07 14:25:20

标签: ruby

我正在尝试从响应正文中获取图像。现在,这给了我整个HTML页面。我看到了标签,但无法专门检索它。任何帮助都会很棒!

#Get Request
encoded_response = response.body.force_encoding("UTF-8")
url = URI.parse(encoded_response)
req = Net::HTTP::Get.new(url.to_s)
res = Net::HTTP.start(url.host, url.port) {|http|
  http.request(req)
}
puts res.img

对于那些即将要求的人,我必须对响应进行编码,因为我收到了错误的URI错误IP

1 个答案:

答案 0 :(得分:2)

您是否查看过像Nokogiri这样的解析库?

html = Nokogiri::HTML.parse(response.body.force_encoding("UTF-8"))
image_urls = html.css('img').map { |image_tag| image_tag["src"] }

要“下载”图片,请参阅此处:Download an image from a URL?