Я использую следующий фрагмент кода для очистки определенных изображений с веб-страницы. На этой странице есть несколько изображений с тегом изображения, и как этот код интерпретирует это? Я заметил, что он сохраняет только первое изображение с тегом изображения. Это правда в целом?Сохранение изображения с помощью Nokogiri
Правильно ли я рассуждаю, что этот код начинает считывать css сверху вниз, и как только он находит первое изображение с тегом изображения, оно сохраняет его и перестает смотреть дальше? Потому что мне нужно это сделать именно так.
PAGE = "http://example.com/page.html"
require 'nokogiri'
require 'open-uri'
html = Nokogiri.HTML(open(PAGE))
src = html.at('.image')['src']
File.open("foo.png", "wb") do |f|
f.write(open(src).read)
end
Это просто захватывает первый элемент '.image' и загружает атрибут' src'. Он не заботится обо всех изображениях. Если это так, вы должны использовать метод 'css' вместо' at'. Вероятно, вы хотите использовать '.css ('img')'. – tadman
Вы хотите найти элементы с классом 'image' или все' img's? – nloveladyallen