使用nokogiri ruby​​编辑html文档中的img标签

时间:2015-07-07 16:38:59

标签: ruby nokogiri

我想使用nokogiri在html文档中编辑img标记。

我目前在doc:

中有以下img标记

<img src="image1.jpg">

与图像的命名没有一致性。我想要做的是将上面的img转换为以下内容:

<img src="/User/account/folder1/folder2/image1.jpg">

我将/User/account/folder1/folder2/存储在变量中。

文档在每个文档中可以包含1到20个图像标记,但路径始终相同。

在转换结束时,我将采用修改后的html并将其存储到变量

  doc = Nokogiri::HTML(open(file))

我可以打开文档,但我不确定如何继续迭代它。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

完成了我想要的目标:

page = Nokogiri::HTML(open(file))
  page.css('img').each do |div|
    image = div.attribute("src")
    div.set_attribute("src", ("#{absolute_path}""#{image}") )
    puts div.attribute("src")
  end

  amended_page = page.to_html

值得注意的是absolute_path是一个在此之外的变量集,通常类似于User/account/folder/