diff --git a/ox/lyricsfly.py b/ox/lyricsfly.py new file mode 100644 index 0000000..eb72537 --- /dev/null +++ b/ox/lyricsfly.py @@ -0,0 +1,21 @@ +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') + print getLyrics('Kool Thing', 'Sonic Youth') + getLyrics('Material Girl', 'Madonna') \ No newline at end of file