# Buggy code
async def _players_check():
    try:
        get_single_title = lavalink.active_players()[0].current.title
        query = audio_dataclasses.Query.process_input(
            lavalink.active_players()[0].current.uri
        )
        if get_single_title == "Unknown title":
            get_single_title = lavalink.active_players()[0].current.uri
            if not get_single_title.startswith("http"):
                get_single_title = get_single_title.rsplit("/", 1)[-1]
        elif query.is_local:
            get_single_title = "{} - {}".format(
                lavalink.active_players()[0].current.author,
                lavalink.active_players()[0].current.title,
            )
        else:
            get_single_title = lavalink.active_players()[0].current.title
        playing_servers = len(lavalink.active_players())
    except IndexError:
        get_single_title = None
        playing_servers = 0
    return get_single_title, playing_servers


# Traceback (RuntimeError)
Traceback (most recent call last):
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/discord/ext/commands/core.py", line 79, in wrapped
ret = await coro(*args, **kwargs)
File "/home/martinebots/martinebotscogs/cogs_modified/audio/audio.py", line 3183, in play
await self._enqueue_tracks(ctx, query)
File "/home/martinebots/martinebotscogs/cogs_modified/audio/audio.py", line 3885, in _enqueue_tracks
result, called_api = await self.music_cache.lavalink_query(ctx, player, query)
File "/home/martinebots/martinebotscogs/cogs_modified/audio/apis.py", line 911, in lavalink_query
results = await player.load_tracks(query)
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/lavalink/rest_api.py", line 300, in load_tracks
self.__check_node_ready()
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/lavalink/rest_api.py", line 268, in __check_node_ready
raise RuntimeError("Cannot execute REST request when node not ready.")
RuntimeError: Cannot execute REST request when node not ready.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/discord/ext/commands/bot.py", line 863, in invoke
await ctx.command.invoke(ctx)
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/discord/ext/commands/core.py", line 728, in invoke
await injected(*ctx.args, **ctx.kwargs)
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/discord/ext/commands/core.py", line 88, in wrapped
raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: RuntimeError: Cannot execute REST request when node not ready.```

# Fixed code
async def _players_check():
    try:
        current = next(
            (
                player.current
                for player in lavalink.active_players()
                if player.current is not None
            ),
            None,
        )
        get_single_title = get_track_description_unformatted(current)
        playing_servers = len(lavalink.active_players())
    except IndexError:
        get_single_title = None
        playing_servers = 0
    return get_single_title, playing_servers