@Telmor

Что делать, если бот не находит пользователя на сервере?

У меня есть код который каждую минуту проверяет базу данных на наличие вышедшего времени. И если время вышло - снимает роль и удаляет из бд строку.
И после того как я получил id пользователя я хочу преобразовать его в объект. Но у меня выходит ошибка:
member = main_guild.get_member(member_id)
AttributeError: 'NoneType' object has no attribute 'get_member'


Код:
@tasks.loop(minutes=1.0)
    async def mutes(self):
        ended = self.nakaz.find({'mute_time': {'$lte': time.time()}})
        for mute in ended: 
            main_guild = self.bot.get_guild(820618566163628034)
            member_id = mute["_id"]
            print(member_id)
            member = main_guild.get_member(member_id)
            muted = main_guild.get_role(913833814021787709)
            await member.remove_roles(muted)
            self.nakaz.delete_one(mute)


Прошу помочь мне решить данную проблему.
  • Вопрос задан
  • 88 просмотров
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
member = main_guild.get_member(member_id)
AttributeError: 'NoneType' object has no attribute 'get_member'
Ну чего тут гадать, нет такой гильдии. ID точно не перепутал?
Кроме того, ты уверен что функция не запускает до того как бот подключился?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 22:26
3500 руб./за проект
22 нояб. 2024, в 21:47
3000 руб./за проект
22 нояб. 2024, в 21:44
50000 руб./за проект