🇺🇦Розробка Телеграм ботів на Python
2.96K subscribers
246 photos
40 videos
6 files
269 links
https://botfather.dev?utm_source=tg_channel
Боти дозволяють автоматизувати майже всі процеси та зробити все це просто в Telegram.
Програмуючи на Python ви зможете реалізувати свої самі шалені ідеї.

Найважливіша інформація тут!
Download Telegram
📊Статистика в ботах и не только

Пока разработчики Телеграм доделывают Bot API, чтобы боты могли отправлять пользователям статус "Выбираю стикер", что наверное будет "очень полезным", я тут тестирую и настраиваю отображению статистики использования своего бота и сайта, с чем и хочу поделиться.

Спасибо Groosha за его гайд по настройке статистики в ботах. В будущем планирую взять его за основу для видеоурока.

Самое интересное, что помимо InfluxDB, которую рекомендуют для работы с отметками времени, в Grafana вы можете использовать и существующие данные из ваших баз в PostgreSQL, MySQL, MongoDB и других.
Таким образом прикрутил довольно полезный дешборд для себя.
📖Словарь Терминов

Подготовил для вас что-то вроде Глоссария. Особенно будет полезно новичкам в разработке ботов, обязательно почитайте! Замечания или дополнения приветствуются.

P.S. Для студентов курса готовится особый чек-лист, частью которого этот глоссарий и является :)

#полезное #курс
💡Интересные решения в Python

Предлагаю вам ознакомиться с интересным каналом @python_tricks, где публикуются полезные решения, которые могут вам пригодиться в будущем при разработке ботов. Например, я zip`ом довольно часто стал пользоваться, удобная штука для объединения списков под формирование Inline-клавиатур. Или, как в этом примере, выгрузив строки из базы данных — вы можете их транспонировать и поделить данные по "колонкам".

Вначале изучения Python вроде бы и проходишь все эти вещи, но со временем они забываются за ненадобностью.
Ознакамливайтесь, вспоминайте, сохраняйте себе что понравилось :)

#полезное
Материалы на английском

Иногда натыкаюсь на интересную информацию, которой хочу поделиться, но довольно часто она на английском. Кидать?
Final Results
54%
Да, я спокойно читаю такое
39%
Да, но буду переводить
5%
Нет, я не знаю английского
2%
Нет, не это будет лишним
📑Урок по работе с Google Sheets (Гугл-Таблицы).

В этой 2-й части мы рассмотрим как заполнять наши таблицы рандомными данными (с помощью библиотеки Faker), для создания примера "статистики", и еще как эти данные с таких таблиц читать.

Также, вы узнаете как с помощью Python автоматически форматировать ваши гугл-таблицы, т.е. сделать шрифт жирным/курсивом или раскрасить границы.

#курс
Дополнительные уроки доступны к покупке! И да, я теперь фронтендер :D

В связи с тем, что достаточно тяжело было найти разработчика для доработки сайта, а мой основной разработчик не имеет столько времени, я начал изучать vue-js и немного дорабатывать то, что уже есть. Очень интересный опыт, а самое приятное — у меня что-то получается)))

Правда с CSS я ранее почти не работал и некоторые вещи могут выглядеть страшновато, но позже мы и это исправим. На мобильных устройствах сейчас может быть не сильно удобно пользоваться сайтом.

Изменения по сайту:
1. Исправил несколько багов с отображением меню аккаунта, кстати теперь весь тот элемент кликабельный и ведет в настройки (не нужно целиться на кнопку)
2. При покупке 5-го тарифа больше нет кнопочки "Улучшить".
3. В дополнительных уроках теперь можно докупать по одному уроку, если вам интересна какая-то отдельная тема, но вы не хотите платить за полный тариф! Кстати, цена за урок при наличии 2-го тарифа в два раза меньше!
4. Добавил кнопки на лендинге, но это такое
📖Обучение основам Python от Академии JetBrains

Вдруг еще кто-то не изучил основы питона (да-да, а вас таких тут очень много...), рекомендую заценить обучающую площадку от JB, ну и соответственно жду от вас отзывов по ней.

Продукты от этой компании мне очень нравятся, а еще они же поделились со мной купонами на Pycharm Pro для студентов, и очень оперативно выходят на связь.

Помимо этого у них есть Youtube канал с "исследованиями" и обучающими плейлистами на очень интересные темы типа: Семинары лаборатории киберфизических систем, Физика элементарных частиц и космология и Вычислительная Нейробиология.
Команда развивает множество очень перспективных и популярных направлений и сейчас, поэтому, как мне кажется и этот "курс по питону" может оказаться очень достойным!

Кстати, так получилось, что про академию я узнал из канала одного из учеников, так что не могу не упомянуть.


#полезное
Приятное обновление для пользователей сайта, теперь в настройках можно отключить кастомный курсор и доступна темная тема!

#курс
Плагин для отслеживания затраченного времени на проекты

Помимо встроенного в Pycharm плагина (Time Tracking), как-то мне порекомендовали попробовать плагин Wakatime.

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

Напомню, что отслеживание времени очень важно, чтобы позже суметь адекватно оценить аналогичный проект по времени! И соответственно, чтобы составить приближенную к реальности стоимость заказа, когда вы за него возьметесь.

Напоминаю, что на моей площадке есть соответствующее видео о том, как составить стоимость разработки бота.


#полезное
Новые платежные провайдеры в ботах!

Телеграм нас радует новыми платежными провайдерами для ботов:

🇺🇦 Portmone, Cascad
🇷🇺 PSB (ПСБ)
и Paymega (так и не понял для каких стран)

Если вы с Украины, то первого провайдера скорее всего вы должны знать, а вот про Каскад я не слышал.

До этого момента для Украины было доступно только Tranzzo и Liqpay (а-ля ПриватБанк). В транззо очень сложное было подключение, но как выясняется, ликпей не многим лучше. Надеюсь, что Портмоне в этом плане окажется приятнее!

#полезное
This media is not supported in your browser
VIEW IN TELEGRAM
📈Telegram запустил рекламную платформу

«Спонсируемые сообщения» в Telegram отображаются в публичных каналах с 1000+ подписчиками и ограничением в 160 символов.

Спонсируемые сообщения основаны исключительно на тематике публичных каналов, в которых они показываются.

🤑Минимальная цена за тысячу показов для спонсируемого сообщения составляет 2 евро.🤑
Но, чтобы размещать там рекламу, нужно внести депозит в размере 2 млн. евро)

Как говорил недавно сам телеграм:
В отличие от других приложений, Telegram не отслеживает, перешли ли вы по рекламному сообщению, и не создает на вас "досье" на основе вашей активности.

Что еще известно о спонсируемых сообщениях
• Спонсируемые сообщения это реклама от Telegram, а не от администраторов канала.
• Рекламодатель сможет выбирать канал для размещения рекламы.
• На время тестирования только Telegram будет получать прибыль с размещения рекламы.
• Как только Telegram покроет свои основные расходы, доход будет делиться с владельцами каналов, где размещаются рекламные сообщения.
Github Copilot & Pycharm

Должно быть, вы уже слышали про Github Copilot и не раз. А если не слышали — это инструмент дополнения кода на основе ИИ, который был натренирован на открытых репозиториях Github, благодаря чему очень и очень хорош в автодополнении кода! Многие уже успели его попробовать и были в восторге.

Пока что доступ выдается по мере поступления заявок, поэтому нужно ждать, но можно уже зарегистрироваться и встать в очередь на получение доступа.

Ах да) Теперь у них появился и плагин на Pycharm и IntelliJ! А вот и инструкция по применению.
Ура, товарищи)

#полезное
⚙️Еще больше настроек!

Вот уже подоспело обновление для macOS, а скоро значит будет и для других клиентов.

Что нового? Очень интересная фича — теперь можно будет в закрытые чаты ограничить вход не просто по специальной ссылке, а теперь можно будет настроить, чтобы новые участники чата подавали заявки на добавление! Т.е. администраторы будут одобрять или отклонять заявки на добавление.

Помню подобное было еще во ВКонтакте)) Чтож, хорошая вещь, чтобы защитить ваш чат от нежданных гостей (а то вдруг, кто-то нехороший приватной ссылкой поделился).
🥳Bot API был обновлён до версии 5.4🥳

Что нового?
- Возможность для ботов добавлять имена при создании пригласительных ссылок.
- Добавлена поддержка действия choose_sticker в методе sendChatAction
- Добавлен параметр creates_join_request в методы createChatInviteLink и editChatInviteLink для управления ссылками для приглашения в чат.
- Добавлены обновления о новых запросах на присоединение к чату, представленных классом ChatJoinRequest и полем chat_join_request в апдейтах . Чтобы получать эти апдейты, бот должен быть администратором чата с правами администратора can_invite_users.

Все изменения Вы можете посмотреть здесь.

Aiogram теперь тоже поддерживает.
🆕Больше Нововведений!

Ждет много новых крутых фич:

1. Отправка единичных сообщений от имени канала (вместо настройки "анонимности" администраторов) в публичных группах.

2. В группах и каналах можно будет запретить пересылку сообщений (forward).

3. Можно будет удалять сообщения в переписке согласно заданному периоду. Теперь не нужно будет выделять кучу сообщений, чтобы удалить их за пару дней.

В целом, очень круто, хотя люди все равно смогут использовать разные методы обхода ограничений по форвардам).

#прочее
🔩Сервис для анализа ваших github/gitlab репозиториев

Как может помочь вам данный инструмент?

- Найдет возможные проблемы с безопасностью
- Проверит стиль написанного вами кода
- Покажет вам участки кода, которые могут привести к багам
- Выведет % покрытия документацией
- Анализирует ваш репозиторий, на наличие проблем с типами вашего продукта, анти-паттернов, проблем с производительностью

Так-же, кроме показа проблем в вашем коде, deepsource.io может предложить варианты их решения.

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

#полезное
🌀ImportError: cannot import name 'a' from partially initialized module...

Не знаете как решать? Или кто-то спросил, а вам лень объяснять? Кидайте это видео...

Очень многие сталкиваются с этой ошибкой из-за непонимания того как работает импортирование в Python.
Я как-то пытался рассказать об этой проблеме кратко в статье выше, но все таки видео в этом плане работает лучше)

P.S. Видео на английском, но согласно недавнему опросу многие из вас готовы их смотреть. Доступны англ. субтитры.

#полезное #проблемы