Skip to content

Instantly share code, notes, and snippets.

@brianjolly
Forked from anonymous/data-import.rb
Created November 1, 2011 23:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save brianjolly/1332252 to your computer and use it in GitHub Desktop.
Save brianjolly/1332252 to your computer and use it in GitHub Desktop.
require 'nokogiri'
doc = Nokogiri::XML(File.open("deploy/data/BundleData.xml")) do |config| config.noblanks end
puts "Default Price:"
doc.xpath("//DefaultPrice/Choice").each { |p| puts "id: #{p['id']} price: #{p.content}" }
puts "ExistingCustPrice Price:"
doc.xpath("//ExistingCustPrice/Choice").each { |p| puts "id: #{p['id']} price: #{p.content}" }
puts "Bundled Price:"
doc.xpath("//BundledPrice/Choice").each { |p| puts "id: #{p['id']} price: #{p.content}" }
puts "Bundle Groups"
doc.xpath("//Bundle").each { |b|
if b.xpath('cod')[0]
puts "id: #{b['id']} cod: #{b.xpath('cod')[0].content} installFee: #{b.xpath('installFee')[0].content}"
else
puts "id: #{b['id']}"
end
}
puts "Bundles"
doc.xpath("//Bundle/Customization/Choice").each { |b| puts "id: #{b['id']} num_products: #{b.xpath('Choices/Choice').length}"}
------- output -------
Default Price:
id: 40001 price: 0.00
id: 50001 price: 9.99
id: 50002 price: 19.99
id: 50003 price: 49.99
id: 60001 price: 19.99
id: 60002 price: 19.99
id: 60003 price: 29.99
id: 60004 price: 44.99
id: 60005 price: 99.99
id: 60101 price: 7.00
id: 60102 price: 0.00
id: 60103 price: 10.00
id: 60201 price: 10.00
id: 60301 price: 10.00,5.00
id: 70002 price: 14.99
id: 70003 price: 19.99
id: 70004 price: 29.99,14.99
id: 70101 price: 20.00
id: 70102 price: 25.00
id: 70103 price: 10.00
id: 50101 price: 15.00,10.00
id: 50102 price: 10.00,5.00
id: 50103 price: 10.00,5.00
id: 50104 price: 10.00
id: 50107 price: 10.00
id: 50201 price: 10.00
id: 50202 price: 5.00
id: 50203 price: 10.00
id: 50204 price: 5.00
id: 90001 price: 5.00
id: 90201 price: 5.00
id: 80001 price: 15.00
id: 50401 price: 0.00
id: 50402 price: 0.00
id: 50403 price: 0.00
id: 50404 price: 0.00
id: 50301 price: 5.00
id: 50302 price: 10.00
id: 50303 price: 15.00
id: 80101 price: 20.00
id: 80102 price: 40.00
id: 80103 price: 60.00
id: 80201 price: 20.00
id: 80202 price: 40.00
id: 80203 price: 60.00
id: 90101 price: 10.00
id: 90102 price: 20.00
id: 90103 price: 30.00
ExistingCustPrice Price:
id: 50001 price: 9.99
id: 50003 price: 44.99
id: 60002 price: 19.99
id: 60003 price: 29.99
id: 60004 price: 44.99
id: 60005 price: 99.99
Bundled Price:
id: 50001 price: 9.99
id: 50003 price: 44.99
id: 60001 price: 19.99
id: 60002 price: 19.99
id: 60003 price: 29.99
id: 60004 price: 44.99
id: 60005 price: 99.99
id: 70002 price: 14.99
id: 70003 price: 19.99
id: 70004 price: 29.99,14.99
Bundle Groups
id: 50000 cod: 30.00 installFee: 25.00
id: 60000 cod: 30.00 installFee: 49.99
id: 70000 cod: 30.00 installFee: 49.99
id: 100000 cod: 60.00 installFee: 50.00
id: 101000 cod: 60.00 installFee: 49.99
id: 102000 cod: 60.00 installFee: 25.00
id: 103000 cod: 90.00 installFee: 74.99
id: 80000
id: 90000
Bundles
id: 40501 num_products: 1
id: 40502 num_products: 1
id: 40503 num_products: 1
id: 40504 num_products: 1
id: 40505 num_products: 2
id: 40601 num_products: 1
id: 40602 num_products: 1
id: 40603 num_products: 1
id: 40604 num_products: 1
id: 40605 num_products: 1
id: 40607 num_products: 1
id: 40701 num_products: 1
id: 40200 num_products: 2
id: 40200_dm num_products: 2
id: 40202 num_products: 3
id: 40202_existing num_products: 3
id: 40203 num_products: 7
id: 40203_existing num_products: 7
id: 40204 num_products: 2
id: 40215 num_products: 2
id: 40205 num_products: 3
id: 40206 num_products: 3
id: 40209 num_products: 2
id: 40210 num_products: 3
id: 40211 num_products: 3
id: 40212 num_products: 3
id: 40213 num_products: 3
id: 40214 num_products: 2
id: 40216 num_products: 7
id: 40216_existing num_products: 7
id: 40217 num_products: 3
id: 40218 num_products: 5
id: 40219 num_products: 5
id: 40220 num_products: 6
id: 40400 num_products: 2
id: 40401 num_products: 3
id: 40402 num_products: 3
id: 40403 num_products: 2
id: 40404 num_products: 3
id: 40405 num_products: 3
id: 40300 num_products: 3
id: 40301 num_products: 2
id: 40306 num_products: 2
id: 40303 num_products: 4
id: 40304 num_products: 4
id: 40305 num_products: 2
id: 40100 num_products: 4
id: 40101 num_products: 3
id: 40101_existing num_products: 3
id: 40102 num_products: 5
id: 40102_existing num_products: 5
id: 40103 num_products: 5
id: 40103_existing num_products: 5
id: 40104 num_products: 7
id: 40105 num_products: 10
id: 40106 num_products: 11
id: 40107 num_products: 4
id: 40108 num_products: 3
id: 40109 num_products: 4
id: 40110 num_products: 3
id: 40111 num_products: 4
id: 40112 num_products: 3
id: 40112_existing num_products: 3
id: 40113 num_products: 4
id: 40114 num_products: 4
id: 40115 num_products: 4
id: 40116 num_products: 4
id: 40117 num_products: 5
id: 40118 num_products: 3
id: 40119 num_products: 6
id: 40120 num_products: 6
id: 40121 num_products: 7
id: 40122 num_products: 7
id: 40123 num_products: 8
id: 40124 num_products: 3
id: 40125 num_products: 3
id: 40126 num_products: 3
id: 40129 num_products: 3
id: 40130 num_products: 4
id: 40131 num_products: 4
id: 40132 num_products: 4
id: 40133 num_products: 4
id: 40134 num_products: 4
id: 40135 num_products: 7
id: 40136 num_products: 7
id: 40137 num_products: 10
id: 40138 num_products: 11
id: 40139 num_products: 4
id: 40140 num_products: 4
id: 40141 num_products: 4
id: 40142 num_products: 5
id: 40145 num_products: 5
id: 40144 num_products: 7
id: 40143 num_products: 7
id: 40146 num_products: 5
id: 40146_existing num_products: 5
id: 40147 num_products: 10
id: 40148 num_products: 11
id: 40149 num_products: 5
id: 40149_existing num_products: 5
id: 40150 num_products: 7
id: 40151 num_products: 5
id: 40152 num_products: 6
id: 40153 num_products: 6
id: 40156 num_products: 5
id: 40157 num_products: 6
id: 40158 num_products: 6
id: 40160 num_products: 5
id: 40161 num_products: 6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment