Задать вопрос
@Dimentiy-cmd

Как в VK Bottle получить имя и фамилию пользователя?

@bot.on.message(text=["/info"])
async def info(message: Message):
    try:
        cursor.execute("SELECT username FROM asite_users WHERE vk_id = %s", (message.from_id,))
        nick = cursor.fetchone()
        user = await bot.api.users.get(message.from_id)
        if user: # если user True 
            first_name = user[0].first_name
            last_name = user[0].last_name
            if nick is None:
                await message.answer(f"Статистика {last_name}\nID: {message.from_id}\nНикнейм: отсутсвует")
            else:
                await message.answer(f"Статистика {last_name}\nID: {message.from_id}\nНикнейм: {nick[0]}")
        else: # если user False
            await message.answer(f"Пользователь не найден.")
    except Exception as e:
        await message.answer(f"Произошла ошибка:\n{e}")

Почему то пишет что пользователь не найден.
Как сделать получение более корректным?

UPD: Бот вообще не ищет по ID, как это исправить?
  • Вопрос задан
  • 29 просмотров
Подписаться 1 Простой 3 комментария
Решения вопроса 1
@Dimentiy-cmd Автор вопроса
Разобрался с получением ID
Вместо:
await bot.api.users.get(message.from_id)
Это:
await bot.api.users.get(user_ids=f'{message.from_id}')
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы