zenoftrading
zenoftrading личный блог
13 мая 2021, 20:50

Как слать сообщения в телеграм из питона в три строчки

Удобно когда бот шлёт сообщения в телеграм, а не в лог файл. Как это можно сделать в python? Очень просто.

Как слать сообщения в телеграм из питона в три строчки

Шаг 1. Устанавливаем либу loguru. Вам же нужно логирование в боте? Через loguru настраивается парой строчек.
Шаг 2. Устанавливаем либу notifiers которая шлёт сообщения куда угодно тоже парой строчек.
Шаг 3. Настраиваем

# подключаем либы
from loguru import logger
from notifiers.logging import NotificationHandler

# прописываем параметры телеграм бота, от чьего имени и куда слать, где их взять думаю сами разберетесь
params = {
    'token': 'dfdfsfasdfljsahdfkljhasdfklj',
    'chat_id': 'dfkdsflksdjfls;kfjas;ldkf'
}
tg_handler = NotificationHandler("telegram", defaults=params)

# добавляем в logger правило, что все логи уровня info и выше отсылаются в телегу
logger.add(tg_handler, level="INFO")

Я у себя настроил уровень info. Использую его как раз для сообщений в телегу. А вот debug сообщения в телегу уже не приходят. Нечего эфир засорять. Подробнее про уровни логов можно почитать в справке docs.python.org/3/library/logging.html#logging-levels

Шаг 4. Отправляем сообщение
logger.info("Слава роботам! Убить всех человеков!")

Если не нужны логи, можно слать просто через notifiers.
13 Комментариев
  • Mantis
    13 мая 2021, 20:53
    Круто! Спасибо за либы, не знал…
  • Свой Мужик
    13 мая 2021, 21:01
    С зеннолаба? :)
      • Свой Мужик
        14 мая 2021, 17:22
        zenoftrading, раз не понял, значит точно не в курсе )
  • Jame Bonds
    13 мая 2021, 21:02
    Сейчас Telegram API уже без VPN работает?

  • 이익
    13 мая 2021, 21:11
    Шикарно
  • Иван Егоров
    13 мая 2021, 21:43
    :) я с php в одну строчку шлю messages в telegram :)
  • Сергей
    14 мая 2021, 00:27
    А в token и chat_id что вписывать? В токен я так понимаю токен моего бота? Что-то не получилось у меня запустить
    • Сергей
      14 мая 2021, 00:34
      Сергей Земсков, в общем chat_id  это адрес куда отправлять, но надо оказывается перед идентификатором поставить зна "-", тогда всё отправляет
  • Andrey
    09 декабря 2021, 23:46
    а можно подсказать, как просто слать сообщения через notifiers. Я не так давно изучаю яп, в документации не понятно мне ничего к сожалению(

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн