Walk with Nokogiri through whole DOM?

Hi all

I want to walk with Nokogiri through the whole DOM of an HTML document
and want to do some stuff to the elements; then save the whole DOM again
(with the changes applied).

I need something like that:

dom.each do |tag|
if tag.type == “a”
# do some stuff to links!
if tag.type == “p”
# do some stuff to paragraphs
if …
end
end

Sadly I don’t really know how to do this, I’m not very used to XPath and
stuff…

Thanks
Josh

Joshua M. wrote:

Hi all

I want to walk with Nokogiri through the whole DOM of an HTML document
and want to do some stuff to the elements; then save the whole DOM again
(with the changes applied).

I need something like that:

dom.each do |tag|
if tag.type == “a”
# do some stuff to links!
if tag.type == “p”
# do some stuff to paragraphs
if …
end
end

Sadly I don’t really know how to do this, I’m not very used to XPath and
stuff…

Do you really want to do it this way? Why not do an XPath query that
selects and processes all , then another one for all

?

Thanks
Josh

Best,

Marnen Laibow-Koser
http://www.marnen.org
[email protected]

Do you really want to do it this way? Why not do an XPath query that
selects and processes all , then another one for all

?

Yes, maybe you’re right, this could work as good. But I’m a bit insecure
with the conecpt behind Nogokiri - when I iterate over elements of a DOM
and apply changes to them, are they altered within this DOM? I suppose
so… And how can I save the DOM back to HTML?

Thanks a lot for help
Josh

Joshua M. wrote:

Do you really want to do it this way? Why not do an XPath query that
selects and processes all , then another one for all

?

Yes, maybe you’re right, this could work as good. But I’m a bit insecure
with the conecpt behind Nogokiri - when I iterate over elements of a DOM
and apply changes to them, are they altered within this DOM? I suppose
so… And how can I save the DOM back to HTML?

I don’t know. Why don’t you read the docs, experiment, and/or ask on
the Nokogiri discussion forums?

Thanks a lot for help
Josh

Best,

Marnen Laibow-Koser
http://www.marnen.org
[email protected]

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs