Last.fm
From Indie IT Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
HOWTO: Show Top Artists Via Command Line
I wanted to write my own Tweekly-type script to automatically tweet my Top 3 Artists each week.
- Find out where the charts are
- Find the handy XML feed
- Write a PERL script to parse the XML and output
- Install a Ruby script to tweet via BASH
- Write a BASH script to combine it all
- Add that BASH script to my weekly cron job on my Linux server (always on)
Here we go...
RUBY Script
Twitter#How_To_Tweet_Via_The_Command_Line
PERL Script (lastfm.pl)
#!/usr/bin/perl # load perl modules use LWP::Simple qw(!head); use XML::Simple; use utf8; # create URL object $urlcurrent = get('http://ws.audioscrobbler.com/2.0/user/paullittlefield/weeklyartistchart.xml'); # create XML object $xml = new XML::Simple; # read XML file and set key attribute $data = $xml->XMLin("$urlcurrent",KeyAttr=>1); # show artists foreach $entry (@{$data->{artist}}) { push(@artists,$entry->{'name'}); push(@playcounts,$entry->{'playcount'}); } print "My Top 3 #lastfm Artists: $artists[0] ($playcounts[0]), $artists[1] ($playcounts[1]), $artists[2] ($playcounts[2])"; # exit nicely exit;
BASH Script (lastfm.sh)
#/bin/bash LASTFM=$(/home/paully/Bin/lastfm.pl | strings |tr -d '\n') /usr/local/bin/tweet update "$LASTFM"
CRON Tab
@weekly ~/Bin/lastfm.sh
Total time taken: 1 hour :-)
HOWTO: Scrobble With MPD Music Player Daemon
Install the background mpdscribble daemon...
sudo aptitude install mpdscribble
Now stop the system service version...
sudo service mpdscribble stop sudo update-rc.d -f mpdscribble remove
Create your own configuration file...
mkdir ~/.mpdscribble nano ~/.mpdscribble.conf ... [mpdscribble] host = localhost port = 6600 log = /home/user/.mpdscribble/mpdscribble.log verbose = 2 sleep = 1 musicdir = ~/Music proxy = none [last.fm] url = http://post.audioscrobbler.com/ username = user password = 34534524524tefevdfgaseRQ journal = /home/user/.mpdscribble/lastfm.journal
Start the daemon...
mpdscribble
Add it to your Desktop's Startup and Session in XFCE
Applications > Settings Manager > System > Session and Startup > Application Autostart > Add > mpdscribble
HOWTO: Scrobble With VLC Media Player
Install the background scrobbler daemon...
sudo aptitude install -y lastfmsubmitd sudo update-rc.d lastfmsubmitd defaults sudo service lastfmsubmitd restart
In VLC...
Tools > Preferences > Show Settings > All Interface > Control Interfaces > Tick 'Submission of played songs to Last.fm' Audioscrobbler > Username + Password + Scrobbler URL - http://post.audioscrobbler.com/ Save Restart VLC