Beispiel #1
0
def write_all_lyrics_to_file():
    with open('all_bands.txt', "r", encoding='utf-8') as band_file:
        with open('all_lyrics.txt', 'w', encoding='utf-8') as lyrics_file:
            for line in band_file:
                try:
                    albums = darklyrics.get_albums(line)
                    print(albums)
                    time.sleep(1)
                    for album in albums:
                        songs = darklyrics.get_songs(line, album)
                        print(songs)
                        time.sleep(1)
                        for song in songs:
                            lyrics_file.write(darklyrics.get_lyrics(
                                song, line))
                            time.sleep(1)
                    print('\nFOUND!\n')
                    # time.sleep(1)
                except darklyrics.LyricsNotFound:
                    print('No lyrics found for ' + line)
                    # time.sleep(1)
                time.sleep(1)
            band_file.close()
            lyrics_file.close()
Beispiel #2
0
                    print(albums)
                    time.sleep(1)
                    for album in albums:
                        songs = darklyrics.get_songs(line, album)
                        print(songs)
                        time.sleep(1)
                        for song in songs:
                            lyrics_file.write(darklyrics.get_lyrics(
                                song, line))
                            time.sleep(1)
                    print('\nFOUND!\n')
                    # time.sleep(1)
                except darklyrics.LyricsNotFound:
                    print('No lyrics found for ' + line)
                    # time.sleep(1)
                time.sleep(1)
            band_file.close()
            lyrics_file.close()


#write_all_bands_to_file()
#write_all_lyrics_to_file()
try:
    print(darklyrics.get_lyrics('The Ancient Covenant', 'The Faceless'))
    print(darklyrics.get_lyrics('The Ancient Covenant'))
    print(darklyrics.get_songs('The Faceless'))
    print(darklyrics.get_albums('The Faceless'))
    print(darklyrics.get_all_lyrics('The Faceless'))
except darklyrics.LyricsNotFound:
    print('No lyrics found')
def test_not_found():
    with pytest.raises(LyricsNotFound):
        get_lyrics('fakesong', 'fakeartist')
        get_albums('fakeartist')
def test_integration():
    lyric = get_lyrics('steelheart', 'she\'s gone')
    assert 'i\'m to blame,' in lyric.lower()
def test_song_only():
    lyric = get_lyrics('your familiar face')
    assert 'but love is meaningless' in lyric.lower()
Beispiel #6
0
def handle_command(text, id):
    global target_language
    commandtext = text.strip()
    commands = commandtext.split()
    print('Attempt to handle command')
    if len(commands) < 2:
        return False
    if commands[0] == '/wiki':
        print('Wiki Command')
        print(commands)
        search_param = ' '.join(commands[1:])
        try:
            summary_results = wikipedia.summary(search_param)
            send_message(id, summary_results.split('\n')[0], quote=False)
        except wikipedia.exceptions.DisambiguationError:
            buttons = []
            results = wikipedia.search(search_param)
            for result in results[1:]:
                buttons.append([
                    telegram.InlineKeyboardButton(text=result,
                                                  callback_data=result)
                ])
            send_message(id,
                         "Results for " + search_param,
                         reply_markup=telegram.InlineKeyboardMarkup(
                             inline_keyboard=buttons))
        except wikipedia.exceptions.PageError:
            send_message(id, "No results found for " + search_param)
        return True
    elif commands[0] == '/lyrics':
        print('Lyrics command')
        song_param = ' '.join(commands[1:])
        song_param = song_param.split('by')
        if len(song_param) == 1:
            try:
                lyrics = darklyrics.get_lyrics(song_param[0])
                send_message(id, lyrics, quote=False)
            except darklyrics.LyricsNotFound:
                send_message(id, 'No Lyrics found', quote=False)
            return True
        elif len(song_param) == 2:
            try:
                lyrics = lyricwikia.get_lyrics(song_param[1], song_param[0])
                send_message(id, lyrics, quote=False)
            except lyricwikia.LyricsNotFound:
                try:
                    lyrics = darklyrics.get_lyrics(song_param[0])
                    send_message(id, lyrics, quote=False)
                except darklyrics.LyricsNotFound:
                    send_message(id, "No lyrics found", quote=False)
            return True
    elif commands[0] == '/animelyrics':
        print('Anime lyrics command')
        query = ' '.join(commands[1:])
        try:
            lyrics = animelyrics.search_lyrics(query)
            send_message(id, lyrics, quote=False)
        except animelyrics.NoLyricsFound:
            send_message(id, "No lyrics found", quote=False)
        return True
    return False