@deployingseverus

Как исправить «AttributeError: 'Dispatcher' object has no attribute 'message_handlers'»?

Учусь делать ботов на aiogram и первая же проблема случилась с

Traceback (most recent call last):
  File "D:\pythonPROJECTS\lessonsPython\uchuPYTHON.py", line 8, in <module>
    @dp.message_handlers()
     ^^^^^^^^^^^^^^^^^^^
AttributeError: 'Dispatcher' object has no attribute 'message_handlers'. Did you mean: 'message_handler'?

Вот весь код:

from aiogram import Bot, Dispatcher, types

TOKEN_API = '5939705749:AA***********NTnkMxw2VMvg'  # token API
bot = Bot(TOKEN_API)
dp = Dispatcher()


@dp.message_handler()
async def echo(message: types.Message):
    await message.answer(text=message.text)


if __name__ == '__main__':
    dp.start_polling(bot)
  • Вопрос задан
  • 130 просмотров
Решения вопроса 1
febday
@febday
Это что за смесь aiogram 2 и 3?
Какую в итоге версию aiogram вы используете?
В aiogram 3 не dp.message_handler (и .message_handlers). Учитывая всплывающую ошибку и пояснения к ней вы используете aiogram 2, следователь ошибка ещё в том, что в aiogram 2 не передаётся объект бота в start_polling, он передаётся в Dispatcher
Также для запуска используется executor
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
trapwalker
@trapwalker
Программист, энтузиаст
Прочитайте внимательно:
AttributeError: 'Dispatcher' object has no attribute 'message_handlers'. Did you mean: 'message_handler'?

И посмотрите в свой код на 8 строке. У вас ошибка эта была до того как вы изменили код. Читайте внимательно.
И код оформлять надо специальным тегом
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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