Find file
Fetching contributors…
Cannot retrieve contributors at this time
59 lines (45 sloc) 1.21 KB

iTunes CSV

Export iTunes Library XML data to CSV


I wanted to do a clean-up of my library. iTunes allows you to copy and paste from iTunes into a spreadsheet, but this only includes visible columns. For non-visible columns such as location you need to parse the XML.


$ gem install itunes_csv


$ itunes_csv --help
Usage: itunes_csv [options]
    -f, --fields name,track,year     List of fields (default: name,artist)
    -p, --path PATH                  Path to iTunes XML file (default: ~/Music/iTunes/iTunes Music Library.xml)


May take a long time to run for a large iTunes library (10,000+ tracks)

Supported fields:

  • album
  • artist
  • audio?
  • audiobook?
  • composer
  • date_added
  • episode_number
  • genre
  • id
  • kind
  • last_played_at
  • location
  • location_path
  • movie?
  • number
  • persistent_id
  • play_count
  • played?
  • podcast?
  • season_number
  • total_time
  • tv_show?
  • unplayed?
  • video?
  • year


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request