简体   繁体   中英

Parsing XML feed into Ruby object using Nokogiri?

I am pretty green with coding in Ruby but am trying to pull an XML feed into a Ruby object:

<% doc = Nokogiri::XML(open("http://api.workflowmax.com/job.api/current?apiKey=#{@feed.service.api_key}&accountKey=#{@feed.service.account_key}")) %>

<% doc.xpath('//Jobs/Job').each do |node| %>
    <h2><%= node['name'].text %></h2>
    <p><%= node['description'].text %></p>
<% end %>

Basically, I want to iterate through each Job and output the name, description etc.

What am I missing?

Well, since you haven't shown us any sample XML, I'm going to go out on a limb and say that it is not likely the description is in an attribute. You've used the syntax to extract 'name' and 'description' attributes from the 'job' element. If instead they are nested elements you want something like this:

<% doc.xpath('//Jobs/Job').each do |node| %>
    <h2><%= node.xpath('name').inner_text %></h2>
    <p><%= node.xpath('description').inner_text %></p>
<% end %>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM