@Anim826

Выходит ошибка в aiogram, что делать?

Решил научится писать ботов тг на библиотеке, и нужно было добавить инлайн кнопки, и я кажись это сделал, но после я что-то изменил и капут, бот не запускается, а в консоли выдает вот ето
python bot.py
Updates were skipped successfully.
Task exception was never retrieved
future: <Task finished name='Task-9' coro=<Dispatcher._process_polling_updates() done, defined at C:\Python38\lib\site-packages\aiogram\dispatcher\dispatcher.py:380> exception=AttributeError("'Message' object has no attribute 'send_message'")>
Traceback (most recent call last):
  File "C:\Python38\lib\site-packages\aiogram\dispatcher\dispatcher.py", line 388, in _process_polling_updates
    for responses in itertools.chain.from_iterable(await self.process_updates(updates, fast)):
  File "C:\Python38\lib\site-packages\aiogram\dispatcher\dispatcher.py", line 225, in process_updates
    return await asyncio.gather(*tasks)
  File "C:\Python38\lib\site-packages\aiogram\dispatcher\handler.py", line 117, in notify
    response = await handler_obj.handler(*args, **partial_data)
  File "C:\Python38\lib\site-packages\aiogram\dispatcher\dispatcher.py", line 246, in process_update
    return await self.message_handlers.notify(update.message)
  File "C:\Python38\lib\site-packages\aiogram\dispatcher\handler.py", line 117, in notify
    response = await handler_obj.handler(*args, **partial_data)
  File "bot.py", line 16, in main
    await message.send_message(message.from_user.id, 'Главное меню', reply_markup=kb.inline_kb1)
AttributeError: 'Message' object has no attribute 'send_message'


После написания python bot.py, он по идее запускается и работает, но как только я прописываю старт в боте то выходит выше показанная ошибка, я предполагаю, что где то я ввел не то или что либо не импортировал.

Сам код весь:
bot.py
import keyboards as kb
from config import *
from aiogram import Bot, Dispatcher, executor, types
from aiogram.types import Message
from aiogram.dispatcher.filters import Command


bot = Bot(token = BOT_TOKEN)
dp = Dispatcher(bot)


@dp.message_handler(commands=['start'])
async def main(message: types.Message):
	await message.send_message(message.from_user.id, 'Главное меню', reply_markup=kb.inline_kb1)

@dp.callback_query_handler(text='Info')
async def info(call: types.CallbackQuery):
	await call.answer(cache_time=60)

	await call.message.answer('text', reply_markup=kb.inline_kb_back)

if __name__ == '__main__':
    executor.start_polling(dp, skip_updates=True)


config.py
BOT_TOKEN = 'токен'
ADMIN_ID = 'мой айди'


keyboards.py
from aiogram.types import ReplyKeyboardRemove, \
    ReplyKeyboardMarkup, KeyboardButton, \
    InlineKeyboardMarkup, InlineKeyboardButton


buttonInfo = InlineKeyboardButton(' Информация о колледже ', callback_data='Info')
buttonPostuplenie = InlineKeyboardButton('‍ Поступление ‍', callback_data='Postuplenie')
buttonAnketa = InlineKeyboardButton(' Вступительная анкета ', callback_data='Anketa')
buttonVopros = InlineKeyboardButton('❔ Частые вопросы ❔', callback_data='Vopros')
buttonContacti = InlineKeyboardButton(' Контакты ', callback_data='Contacti')
buttonDocument = InlineKeyboardButton(' подача документов ', callback_data='Document')

inline_kb1 = InlineKeyboardMarkup().row(buttonInfo).row(buttonPostuplenie).row(buttonAnketa).row(buttonDocument).row(buttonVopros).row(buttonContacti)

buttonBack = InlineKeyboardButton(' В главное меню', callback_data='back')

inline_kb_back = InlineKeyboardMarkup().row(buttonBack)


P.s Нет я не взялся за реальный проект, это всего лишь практика и изучение библиотеки aiogram
  • Вопрос задан
  • 7515 просмотров
Решения вопроса 1
SoreMix
@SoreMix
yellow
Очевидно, что должно быть
bot.send_message
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
cat_frisky
@cat_frisky
так же вы можете использвоать метод answer
message.answer('some text', reply_markup=kb.inline_kb_back)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы