Example #1
0
        if found:
            print('Found', file_name)

    print('Parsing character and song data')

    characters = {}

    for index, character_data in enumerate(
            song_pack_data['offline_song_pack_list']):
        character = Character(character_data)
        character.number = index + 1

        for song_data in character_data['song_info_list']:
            song = Song(song_data, character.id)
            if config['rename_aesir'] and song.artist == 'Æsir':
                song.artist = config['rename_aesir_to']
            character.songs.append(song)

        characters[character.id] = character

    for expansion_pack in expansion_pack_data['ExpansionPackList']:
        pack_info = ExpansionPackInfo(expansion_pack)
        for song_data in expansion_pack['SongInfoList']:
            song = Song(song_data)
            if config['rename_aesir'] and song.artist == 'Æsir':
                song.artist = config['rename_aesir_to']
            song.expansion_pack_info = pack_info
            characters[song.character_id].songs.append(song)

    with concurrent.futures.ProcessPoolExecutor() as executor:
        futures = []