Запуск асинхронного цикла при запуске бота

Всем привет. Я хотел при каждом запуске бота проверять наличие роли у всех пользователей сервера. Если значение истинно, то будет запускаться асинхронный цикл. Попробовал, но выдает ошибку.

@client.event
async def on_ready():
cursor.execute("""CREATE TABLE IF NOT EXISTS roles (
    id INT,
    roleid INT
    )""")
await bd()

@client.event
async def bd():
for guild in client.guilds:
    for member in guild.members:
        roleexist = cursor.execute("SELECT roleid FROM roles WHERE id = {}".format(member.id)).fetchone()[0] 
        На строчке выше выдает ошибку NoneType Object
        if roleexist is None:
            pass
        else:
             asyncio.get_running_loop().create_task(roletaskformember(member, cursor))

async def roletaskformember(ctx, cursor):
balance = cursor.execute("SELECT cash FROM users WHERE id = {}".format(member.id)).fetchone()[0]
timesup = discord.Embed(description = str(member.name) + ", ваша кастомная роль истекла.", timestamp=ctx.message.created_at)
timesup.colour = discord.Colour.red()
timesup.set_author(name=member.name, icon_url=member.avatar_url)
roleexist = cursor.execute("SELECT roleid FROM roles WHERE id = {}".format(member.id)).fetchone()[0]
roletake = discord.utils.get(member.guild.roles, id = (roleexist))
while True:
    await asyncio.sleep(36400)
    if balance < 99:
        await member.remove_roles(roletake)
        await ctx.send(embed = timesup)
        break
    else:
        cursor.execute("UPDATE users SET cash = cash - 99 WHERE id = {}".format(member.id))

Ответы (0 шт):