TheConcertsTracker.py script returns a .csv file with all information about the concerts for a single band or artist, available on the setlist.fm website. You need to apply for a setlist.fm API key to download data and use them; they are free for non-commercial projects. You can get it here. Please read the API Terms of Use carefully.
The script takes as input the artist name (just for naming the output file) and the Musicbrainz MBID code, which is an identifiable code for each artist or band in the database. I'm now working on an automatic call artist name - code. In the meantime you have to manually add the code available on the Musicbrainz website.
artistname: name of the artist or band (string)
artistcode: Musicbrainz MBID (string)
API_KEY: Setlist.fm valid API Key
The algorithm returns a csv file with column names, the value separator is a semicolon ";". The fields are the following:
- ID ID of the concert
- artist artist / band name
- eventdate datetime object of the event
- tourname name of the Tour
- venue name of the venue of the show
- venue_id ID of the venue
- city City where the show is located
- city_id ID of the city
- city_lat Latitude of the city
- city_lon Longitude of the city
- state State name
- state_id ID of the State
- country Country name
- country_id ID of the country
If a field information is missing, the code returns None for that value.
The script now runs on Python 3.x only. You can run the code using the command:
$ python TheConcertsTracker.py 'artistcode' 'artistname' 'API_KEY'
python TheConcertsTracker.py '5441c29d-3602-4898-b1a1-b77fa23b8e50' 'David Bowie' 'API_KEY'
eventID;artist;eventdate;tourname;venue;venue_id;city;city_id;city_lat;city_lon;state;state_id;country;country_id
3bd5f8b0;David Bowie;25-06-2004;A Reality Tour;Eichenring;33d6c80d;Scheeßel;2840070;53.1666667;9.4833333;Lower Saxony;06;Germany;DE
13d2d1e1;David Bowie;23-06-2004;A Reality Tour;T-Mobile Arena;43d62b7f;Prague;3067696;50.0878367932108;14.4241322001241;Hlavní Mesto Praha;52;Czech Republic;CZ
bd2d1e2;David Bowie;20-06-2004;A Reality Tour;Törnävä;2bd6d4ba;Seinäjoki;642149;62.5666667;23.0666667;Western Finland;15;Finland;FI
3d2d1e3;David Bowie;18-06-2004;A Reality Tour;Frognerbadet;2bd628ce;Oslo;6942479;59.912697157616;10.7413673400879;Oslo;12;Norway;NO
1bd2d1ec;David Bowie;17-06-2004;A Reality Tour;Ole Bergen Festival;43d64f17;Bergen;3161732;60.3931603404213;5.3242814540863;Hordaland;07;Norway;NO
bd7250e;David Bowie;11-06-2004;A Reality tour;ArenA;5bd6379c;Amsterdam;2759794;52.373;4.9;North Holland;07;Netherlands;NL
...
22.07.2016 - Version 0.1
27.12.2016 - Version 0.2 - Fixing bugs while reading .json
31.08.2017 - Version 0.3 - Adding Compatibility with Setlist.fm API 1.0
26.05.2018 - Version 0.4 - Handle missing json fields - Drop Python 2 support
TheSetlistsTracker.py script script returns a .csv file with all information about the songs played in a concert for a single band or artist, available on the setlist.fm website. You need to apply for a setlist.fm API key to download data and use them; they are free for non-commercial projects. You can get it here. Please read the API Terms of Use carefully.
The script takes as input the artist name (just for naming the output file) and the Musicbrainz MBID code, which is an identifiable code for each artist or band in the database. I'm now working on an automatic call artist name - code. In the meantime you have to manually add the code available on the Musicbrainz website.
artistname: name of the artist or band (string)
artistcode: Musicbrainz MBID (string)
API_KEY: Setlist.fm valid API Key
A .csv file with the following fields:
- eventID ID of the event
- song song played
- set type of set: 0 - Main Set; 1,2,3 etc. - Encore Number
If a field information is missing, the code returns None for that value.
The script now runs on Python 3.x only. You can run the code using the command:
$ python TheSetlistsTracker.py 'artistcode' 'artistname' 'API_KEY'
python TheSetlistsTracker.py '8538e728-ca0b-4321-b7e5-cff6565dd4c0' 'Depeche Mode' 'API_KEY'
eventID;song;set
73d7da3d;In Chains;0
73d7da3d;Wrong;0
73d7da3d;Hole to Feed;0
73d7da3d;Walking in My Shoes;0
73d7da3d;It's No Good;0
73d7da3d;A Question of Time;0
73d7da3d;Precious;0
73d7da3d;Fly on the Windscreen;0
73d7da3d;Home;0
73d7da3d;Come Back;0
73d7da3d;Peace;0
73d7da3d;In Your Room;0
73d7da3d;I Feel You;0
73d7da3d;Enjoy the Silence;0
73d7da3d;Never Let Me Down Again;0
73d7da3d;Stripped;1
73d7da3d;Personal Jesus;1
...
Contacts and Info: www.fabiolamanna.it
Copyright (c) 2017 Fabio Lamanna. Code under License GPLv3.