14

Как я выбирал фреймворк для ТГ бота

Завёл себе аккаунт чтобы делиться всякими находками, которые удаётся нарыть или придумать по ходу разработки. Может будет полезно для кого-то, ну и надеюсь на советы бывалых.

Для ЛЛ: искал фреймворк для чайников, выбрал Pyrogram, потому что он быстрый, удобный и хорошо документированный.

Я нормально так умею писать код на плюсах, немножко знаю питон, но вот  ботов не писал никогда, поэтому решил попробовать и стал искать удобный фреймворк для начинающих ботоводов. Условия поставил такие:

- Во первых, и наверное самое важное, чтобы было понятно для чайников, т.е. хорошая документация, развитое сообщество и все нужные апи надёжно спрятано внутри простых функций. Потому что хочется писать логику бота, а не ботать апи =)

- Во вторых нормальная производительность. По честному она тут нахрен не нужна, но я-же делаю проектик для удовольствия, поэтому хочется чтобы всё было красиво. А это отсутствие задрачивания ТГ-сервера (т.е. вебхуки или прям MTP), асинхронная обработка запросов, и желательно, прости господи, многопоточность (спойлер - с этим пока не срослось)
- В третьих обожаю лаконичные фреймворки. "Во первых - это красиво". Код писать проще и  получается читабельнее.

На моих любимых плюсах нашелся целый один фреймворк "tgbot-cpp". Он довольно вменяемый, но по п.1 не проходит - доки не очень и сообщество небольшое =/  Ну и с лаконичностью там не оособо - на питоне получается гораздо компактнее. Сходу разобраться не вышло, забил. Может в будущем, если буду делать что-то высоконагруженное к этому вернусь (ха-ха).

В питоне всё поразнообразнее, масса вариантов, под мои хотелки подошли аж два фреймворка. Сначала напрыгнул на aiogram. Большое русскоязычное сообщество, масса примеров и даже учебник, ну и приятный функционал. Всё было классно, пока я не углубился в доки, и там оказались баальшие дыры. В принципе сообщество помогает, но бегать постоянно за помощью как-то напряжно. И ещё сейчас активно растёт новая, третья, версия, она прикольная, но пока в статусе беты и обратную совместимость не поддерживает. И доки к ней дырявые. Так что aiogram тоже отложил на будущее.

Попечалился и полез смотреть ещё один популярный питоновский фреймворк - Pyrogram. И тут прям попадание в яблочко: он офигенно документирован, быстрый, удобный, работает по MTProto - никакого сексу с вебхуками и статическим IP. Вобщем пока что ван лав, всем рекомендую! Попозже напишу подробный ман как начать с ним работать. В принципе в документации всё есть, но была пара моментов над которыми пришлось подумать.

P.S. Из доков к Пирограму узнал, что у Телеги есть тестовые сервера с тестовыми пользователями. Прикольно!

Лига программистов

2.2K постов11.9K подписчиков

Правила сообщества

- Будьте взаимовежливы, аргументируйте критику

- Приветствуются любые посты по тематике программирования

- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества