from oxutils.cache import getUrl from oxutils.html import decodeHtml from oxutils.text import findRe def getLyrics(title, artist): html = getUrl('http://lyricsfly.com/api/') key = findRe(html, '(.*?)') url = 'http://lyricsfly.com/api/api.php?i=%s&a=%s&t=%s' % (key, artist, title) xml = getUrl(url) lyrics = findRe(xml, '(.*?)\[br\] Lyrics [a-z]* by lyricsfly.com') lyrics = lyrics.replace('\n', '').replace('\r', '') lyrics = lyrics.replace('[br]', '\n').strip() lyrics.replace('\n\n\n', '\n\n') lyrics = decodeHtml(lyrics.replace('&', '&')) return lyrics if __name__ == '__main__': print getLyrics('Election Day', 'Arcadia')