+ # extract uid and access token
+ mobj = re.search('"uid":"([\w\d]+?)".*?stream_token=([\w\d]+)', page)
+ if mobj:
+ video_id = match.group(1)
+ stream_token = match.group(2)
+
+ # construct media url (with uid/token) to request song
+ mediaURL = "http://media.soundcloud.com/stream/%s?stream_token=%s"
+ mediaURL = mediaURL % (video_id, stream_token)
+
+ # description
+ description = u'No description available'
+ mobj = re.search('track-description-value"><p>(.*?)</p>', page)
+ if mobj:
+ description = mobj.group(1)
+
+ # upload date
+ mobj = re.search("pretty-date'>on ([\w]+ [\d]+, [\d]+ \d+:\d+)</abbr></h2>", page)
+ if mobj:
+ try:
+ upload_date = datetime.datetime.strptime(match.group(1), '%B %d, %Y %H:%M').strftime('%Y%m%d')
+ except:
+ pass