#!/usr/bin/env ruby require 'REXML/Document' require "benchmark" include Benchmark count = 0 ituneslib = REXML::Document.new(File.open("itunes.xml")).root tracks = ituneslib.elements.to_a('/plist/dict/dict/dict') tracks.each {|track_data| track_data.elements.each { |element| if element.text == 'Track ID' puts element.next_element.text elsif element.text == 'Name' puts element.next_element.text elsif element.text == 'Artist' puts element.next_element.text elsif element.text == 'Composer' puts element.next_element.text elsif element.text == 'Album' puts element.next_element.text elsif element.text == 'Genre' puts element.next_element.text elsif element.text == 'Kind' puts element.next_element.text elsif element.text == 'Size' puts element.next_element.text elsif element.text == 'Total Time' puts element.next_element.text elsif element.text == 'Disc Number' puts element.next_element.text elsif element.text == 'Disc Count' puts element.next_element.text elsif element.text == 'Track Number' puts element.next_element.text elsif element.text == 'Track Count' puts element.next_element.text elsif element.text == 'Year' puts element.next_element.text elsif element.text == 'Date Modified' puts element.next_element.text elsif element.text == 'Date Added' puts element.next_element.text elsif element.text == 'Bit Rate' puts element.next_element.text elsif element.text == 'Sample Rate' puts element.next_element.text elsif element.text == 'Artwork Count' puts element.next_element.text elsif element.text == 'Persistent ID' puts element.next_element.text elsif element.text == 'Track Type' puts element.next_element.text elsif element.text == 'Rating' puts element.next_element.text elsif element.text == 'Play Count' puts element.next_element.text elsif element.text == 'Play Date' puts element.next_element.text elsif element.text == 'Play Date UTC' puts element.next_element.text elsif element.text == 'File Type' puts element.next_element.text elsif element.text == 'Location' puts element.next_element.text elsif element.text == 'File Folder Count' puts element.next_element.text elsif element.text == 'Library Folder Count' puts element.next_element.text elsif element.text == 'Release Date' puts element.next_element.text elsif element.text == 'Podcast' puts element.next_element.text count= count + 1 end } }