Задать вопрос
comandante_ss
@comandante_ss

Как сделать обработчик ошибок iogram python?

Делаю тг бота, и он довольно сложный, иногда возникают ошибки (не в работе самого бота а функций)
Как можно НОРМАЛЬНО сделать обработчик ошибок т.е при возникновении ошибки не останавливать бота, а перезапускать
  • Вопрос задан
  • 1933 просмотра
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    SMM-продвижение в Телеграме
    1 месяц
    Далее
  • Бруноям
    Продвижение в Telegram
    1 месяц
    Далее
  • GB (GeekBrains)
    Профессия SMM-специалист 3.0
    8 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
Как то ты сильно неправильно делаешь бота.
Обработчики команд в aiogram асинхронные и если в функции случается ошибка это никак не влияет на поток выполнения, то есть бот останавливаться не должен в принципе.
Но раз уж у тебя это, каким то образом, происходит, то в консоле должна быть ошибка. Смотришь на ошибку, устраняешь ошибку, бот больше не падает.
Если все совсем плохо (возможно из-за того, что бот "довольно сложный"), то запихни процесс пуллинга в бесконечный цикл примерно так:

import logging


while True:
    try:
        executor.start_polling(dispatcher=dispatcher, skip_updates=True)
    except (KeyboardInterrupt, SystemExit):
        break
    except Exception:
        logging.exception('polling error')

Но лучше конечно ошибки фиксить.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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