Utility Set - Essential Profile Transfer (Windows, Linux, OS X)

Overview
lfmCMD - Command Line
lfmCOL - Data Collector
Generic Playlist Transfer
Essential Profile Transfer
Your last.fm Neighbours
Do-It-Yourself Scrobbler
MusicBrainz Scrobbler
Webservice - Word Cloud
iTunes Radio Scrobbler
Site Notice

- 2010/08/02 - work in progress - 

Several people are interested to change their username. This isn't possible on last.fm because it isn't supported by last.fm. With this utility set it is possible to transfer a lot (but not all) of your data to a new account. You typically put very much efforts (tags, playlists, loved tracks) into your music library. The aim here is to save exactly this work.

Essential for all last.fm users:

Music Library (including all tags):
It's possible to transfer your complete music library. After that each tracks has a playcount of 0 (zero).

Backup your library artists:
perl lfmCOL.pl -xmlfile=OldJoeArtists.xml method=library.getArtists user=OldJoe

Restore your library artists (including all artists tags):
planned

Backup your library albums:
perl lfmCOL.pl -xmlfile=OldJoeAlbums.xml method=library.getAlbums user=OldJoe

Restore your library albums (including all album tags):
planned

Backup your library tracks:
perl lfmCOL.pl -xmlfile=OldJoeTracks.xml method=library.getTracks user=OldJoe

Restore your library tracks (including all tracks tags):
perl transfer_lastfm_tracks.pl -xmlfile=OldJoeTracks.xml -sessionkeyOldUser=SK -sessionkeyNewUser=SK

Loved Tracks:
It's possible to transfer all your loved tracks.

Backup your loved tracks:
perl lovedTracks2xspf.pl -user=toc-rox -xspffile=MyLovedTracks.xspf

Restore your loved tracks:
perl xspf2lovedTracks.pl -xspffile=MyLovedTracks.xspf -lastfmSK=sessionkey

Playlists:
It's possible to transfer the content of all your playlists.

Transfer (copy) your playlists:
perl lastfm2lastfm.pl -playlistURL=FROM -playlistID=TO -lastfmSK=sessionkey

Not essential but important for some last.fm users:

Scrobbling History:
It's not (really) possible to transfer your scrobbling history - you have to start from scratch.
The reasons (limitations by last.fm) are:
- Possible scrobbles per day: 86.400 / 30 = 2.880
- All scrobbles older than 14 days are rejected.

Friends and Groups:
It's not possible to transfer your friends or your group memberships.

Shouts and Messages:
It's not possible to transfer your shouts or your mail messages.

Journal:
It's not possible to transfer your journal (blog) entries.

Practical example - Transfer your library tracks (inclusive all tags):
1. Save your library tracks into a XML file:
perl lfmCOL.pl -xmlfile=MyTracks.xml method=library.getTracks user=toc-rox

2. Verify the content of the XML file:
perl transfer_lastfm_tracks.pl -listonly -xmlfile=MyTracks.xml

3. Transfer the content of the XML file to the new profile (only the first 900 tracks):
perl transfer_lastfm_tracks.pl -end=900 -xmlfile=MyTracks.xml -sessionkeyNewUser="4e...0d" -sessionkeyOldUser="3a...0b"

Practical example - Transfer your loved tracks:
1. Save your loved tracks into a XSPF file (playlist):
perl lovedTracks2xspf.pl -user=toc-rox -xspffile=MyLovedTracks.xspf

2. Verify the content of the XSPF file:
perl list_xspf_tracks.pl -xspffile=MyLovedTracks.xspf

3. Transfer the content of the XSPF file to the new profile:
perl xspf2lovedTracks.pl -xspffile=MyLovedTracks.xspf -lastfmSK="4e...0d"

Session Key - What is that?

- The last.fm session key is similar to a password.

- You need the session key for write access into your last.fm profile.

- Everybody who knows your session key has write access to your account.

- Keep the session key save and private.

- You will need your session key again and again.

- The session key is valid indefinitely.

- You can invalidate the session key by removing the application "lfmCMD".

- Removing is done on the settings page of your last.fm profile.

Session Key - How to get one?

- The process to gain a session key is only required once.

- You have to authorize the application "lfmCMD".

- Use the helper utility "fetch_lastfm_SessionKey.pl" to get a session key.

- The utility leads you step by step through the process of gaining a session key.

  Session Key - Why do I need two keys?
- The session key for your old user is required for reading your private tags (from your old profile).
- The session key for your new user is required for writing the track and tag data (into your new profile).
- A session key typically looks like e.g. "4ce88fa973826a893f1284d74f43cf0d".

Link to utility set: lfmProfile-20100215.zip