Now Playing Tracks

Nextmen Podcast number 10

Damn it..

http://www.thenextmen.com/podcast throws errors when I feed it’s tracklisting in to my tracklist scrobbler

This is the tracklist…

01 Bad Meets Evil - Livin’ Proof (Shady) 02 Elzhi - The World Is Yours (Elmatic) 03 Apollo Brown & Hasaan Mackay - Volume (Mello Music) 04 Opiuo - Off Chops Ft. Jess Chambers (White) 05 Julio Bashmore - Battle For Middle You (PMR) 06 Serocee - Oh Na Na (So Shifty Big Fun Bootleg) (White) 07 Seiji - Easy (Seiji) 08 Hackman - Close (Greco Roman) 09 Deadboy - I Ain’t Gonna Lie (Numbers) 10 The Others - Planet X (Dub Police) 11 SBTRKT - Wildfire (Young Turks) 12 Afrika Hitech - Out In The Streets (VIP) (Warp) 13 Maverick Sabre - Let It Go (Shy FX Mix) (Mercury) 14 Unknown - Oops My Brother (White)

I don’t really see what is different from their other ones that have worked. I’ve got a parsing error in the regex.. I’ve tried stripping out all the symbols except the seperator, but still the same thing.. No time to debug though, I’m packing up my flat for a move and then holiday.. Maybe when I get back in a few weeks I’ll have time to work on it.

Awesome tunes though..

Buzzin’ Fly radio

Challenge number 2…

I’ve been into a record label called Buzzin’ Fly for a few years now. It’s a deep house label, run by DJ Ben Watt, who used to be in Everything But the Girl. Real cool, deep, intelligent house music.

Anyway, they have a radio show that goes out once a week here. Tracklistings published on the same page. These ones were tricky though… very unconventional format is like this:

Artisttitle' (remix name if applicable) (label) » Artisttitle' ….

And so on… EACH TRACK ISN’T ON A SEPARATE LINE! i.e. The tracks are listed in one long line. And the artist and track title are only seperated by a space!!

This requires a new approach.. Thankfully the format doesn’t use any symbols, so I used the same search for a symbol with white space surrounding to use as a separator. If the search only turns up one result process as normal. If more than 1, then we’re in our special Buzzin’ Fly case. So use the found symbols to split the one long line into our tracks.
Finally, I defined a custom regex pattern to split the artist and title out, even though we don’t really have a proper separator character this time. Here it is:

”(?P<artist>[\s\w’-]+) (?P<title>’[\s\w’-]+’)”

The title bit just gets me the bits within the quotes. Thankfully though, since I can remove the label info using the regex that I came up with to deal with the Nextmen, all I need to do is add everything after the title to the title (to add name of remix if there), if that makes sense, and then it all works..

It’s not completely robust though, and I think may get broken by track names with odd characters in, so I might robustify it at some point.

I think also I may refactor the code a little. I suspect I may come across a few other “special cases” and guess I should turn them into functions inside a class, plus turn some of the other processing tricks into standalone functions as well.

The Nextmen Podcast

Ok, so after version 1 of the tracklist scrobbler, I wanted to start improving it so that tracklistings of as many formats as possible can be added with minimal effort.

So challenge number 1…

One group I’m into is the Nextmen, they are a couple of DJs that play really great party / mashup mixes across a range of genres, hip hop, soul, reggae, danchall, dubstep, drum n bass plus a bit of pop now and then. They have a monthly podcast http://www.thenextmen.com/podcast that I listen to.

Tracklistings are published there too, in this format:

trackNo Artist - Title (Record label)

e.g: 01 Nas - Nasty (Def Jam)

As far as I’m concerned though, I don’t care about the track numbers, nor can I make any use of the record label info. So I need a way to remove them. Regular expressions turned out to be the key. I figured out regex to match numbers and symbols at the start of a line, and one for any text at the end of a line contained in brackets. http://www.regextester.com/ proved very handy for experimenting and getting it right.

Then it was just a case of adding checkboxes to enable turning the testing on and off (maybe you listen to an artist that has a digit or symbol as it’s first character) a little logic in the processing and it’s all done. Nextmen podcasts scrobbled to my profile!

To Tumblr, Love Pixel Union