Skip to content

Instantly share code, notes, and snippets.

@ablwr
Created September 22, 2016 02:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save ablwr/aad01782214cec1632b65bc42559d4ca to your computer and use it in GitHub Desktop.
Save ablwr/aad01782214cec1632b65bc42559d4ca to your computer and use it in GitHub Desktop.
require 'csv'
require 'nokogiri'
xml = File.read('hello.xml')
doc = Nokogiri::XML(xml)
all_the_things = []
doc.xpath('//file').each do |file|
title = file.xpath("./title").first.text
filename = file.xpath("./name").first.text
identifier = file.xpath("./identifier/*[contains(text(), 'My display ID')]").text
secret = file.xpath("./identifier/secret").attr('secret').text
all_the_things << [title, filename, identifier, secret]
end
CSV.open('new_file.csv', 'wb' ) do |row|
row << ['title', 'filename', 'identifier', 'secret']
all_the_things.each do |data|
row << data
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment