Ruby,从文本中获取第一个图像

Mic*_*art 3 ruby parsing ruby-on-rails

在Ruby类中,我想解析并获取保存在数据库中的某些文本中的图像的第一次出现.特别是,我想收集所有src属性.

Nokogiri会帮助我吗?我该怎么做?


EDIT1:

我写:

// database stuff...
doc = Nokogiri::HTML(my_html)

doc.search('img') do |img_tag|
  puts img_tag
end
Run Code Online (Sandbox Code Playgroud)

但是我无法收集图像标签.


EDIT2:

我找到了解决方案:

doc.search('img').each do |img_tag|
  puts img_tag.attributes['src']
end
Run Code Online (Sandbox Code Playgroud)

小智 9

试试这个:

require 'nokogiri'

str = "some text <img src='/some/path' /> some another text"
doc = Nokogiri::HTML(str)
if img = doc.xpath('//img').first
    p img.attr('src')
end
Run Code Online (Sandbox Code Playgroud)

在这里查看现场演示