🥱 Все самое необходимое...
t.me/Forzend?boost
👤 Аккаунты:
✈️ Teletram
Здесь наверняка будет что-то ещё...
t.me/Forzend?boost
👤 Аккаунты:
🐙 GitHub✈️ Teletram
Здесь наверняка будет что-то ещё...
Forzend's channel pinned «🥱 Все самое необходимое... t.me/Forzend?boost 👤 Аккаунты: 🐙 GitHub ✈️ Teletram Здесь наверняка будет что-то ещё...»
Привет всем (себе любимому). Сегодня приобрел курс на udemy по python разработке. Зацепили качество у внятный английский, а также количество тем, охватываемых курсом. Забрать удалось за $12 баксов, что по текущему курсу белорусского рубля вышло мне в 31.02 белорусских рубля (думаю будет интересно через пару лет вспомнить о курсе... Хотя кого я обманываю, через пару месяцев). Пока курсом доволен. Он отлично подходит для старта, объясняют восхитительно и подробно, с жизненными примерами. Денег не жаль, курс вышел хороший. И даже я, со своим сомнительным уровнем английского, понимаю почти все, о чем идёт речь в курсе.
udemy.com/share/103IHMAEEccVlVR38H/
#Юдеми #Курсы #Полезное
#Udemy #Courses #Useful
udemy.com/share/103IHMAEEccVlVR38H/
#Юдеми #Курсы #Полезное
#Udemy #Courses #Useful
Думаю пришло время рассказать о проектах, над которыми работаю в данный момент времени. Но прежде стоит сказать, что я объединился с одним из знакомых в организацию (как бы громко это не было сказано), для обмена опытом и работы над совместными проектами. Первым таким проектом станет библиотека aiohttp_forms, которая призвана упростить сбор данных у пользователя в боте. Идею, буквально, украл, однако подобной реализации в python я не нашел. Сейчас разработка двигается весьма гладко, хотя у меня и не так много времени, чтобы довести библиотеку до идеала. В данный момент там мало на что смотреть, однако минимальный рабочий пример уже есть. В планах сейчас накатить несколько инструментов, чтобы привести код к чему-то читаемому. Для этого планирую использовать flake8, black, mypy. Написать небольшую документацию и выкатить первый релиз 0.0.1. Дальше пока смотреть рановато, но нужно сделать формы более гибкими. Из "особенных фич" в планах продумать возможность использования тем и кастомных Jinja2 шаблонов. По мере развития продукта постараюсь отписывать здесь. Ну и, конечно, о релизе обязательно отпишу.
#ГитХаб #Организация
#GitHub #Organisation
#ГитХаб #Организация
#GitHub #Organisation
Спустя много лет и много зим, как в сказке, снизошёл к вам с небольшим анонсом.
👉👈
Но давайте по порядку...
В первую очередь стоит сказать, что темплейт в очередной раз обновлен и перенесен в гитхаб репозиторий организации fonco. Все ссылки, опять же, в закреплёном сообщении. В этом шаблоне произошел небольшой рефакторинг, обновился конструктор клавиатур и был добавлен уже устаревший бродкастер. О нем в следующем посте. Также был добавлен cli и переписан механизм запуска. Конфиг, как и прежде, — .yaml файл. Однако теперь мы используем несколько конфигов, ибо это стильно, можно, молодёжно 😎😎
Название файла конфига передается через аргумент командной строки -c --config во время запуска. Но ведь все мы ленивые. Поэтому чтобы каждый раз не прописывать путь к конфигу, вы можете вписать его в переменную окружения $BOT_CONFIG_FILE, из которой он подхватится, если бот запустить не передав аргумент конфига. Скриншот приложу [1].
О конструкторе говорить особо нечего, кроме того, что он достиг своего логического завершения. Все баги пофиксил, обновления залил. Теперь это можно юзать без зазрения совести. Более того, я его уже протестировал в коммерческом проекте. Очень удобная штука. Основные изменения были направлены на ReplyMarkup, поэтому скриншоты именно его работоспособности прикладываю ниже [2, 3]
#Шаблон #Аиограм #Боты
#Template #Aiogram #Bots
👉👈
Но давайте по порядку...
В первую очередь стоит сказать, что темплейт в очередной раз обновлен и перенесен в гитхаб репозиторий организации fonco. Все ссылки, опять же, в закреплёном сообщении. В этом шаблоне произошел небольшой рефакторинг, обновился конструктор клавиатур и был добавлен уже устаревший бродкастер. О нем в следующем посте. Также был добавлен cli и переписан механизм запуска. Конфиг, как и прежде, — .yaml файл. Однако теперь мы используем несколько конфигов, ибо это стильно, можно, молодёжно 😎😎
Название файла конфига передается через аргумент командной строки -c --config во время запуска. Но ведь все мы ленивые. Поэтому чтобы каждый раз не прописывать путь к конфигу, вы можете вписать его в переменную окружения $BOT_CONFIG_FILE, из которой он подхватится, если бот запустить не передав аргумент конфига. Скриншот приложу [1].
О конструкторе говорить особо нечего, кроме того, что он достиг своего логического завершения. Все баги пофиксил, обновления залил. Теперь это можно юзать без зазрения совести. Более того, я его уже протестировал в коммерческом проекте. Очень удобная штука. Основные изменения были направлены на ReplyMarkup, поэтому скриншоты именно его работоспособности прикладываю ниже [2, 3]
#Шаблон #Аиограм #Боты
#Template #Aiogram #Bots
Пробил лимит кепшена, поэтому скриншоты сообщения выше прикрепляю отдельно 👆👆👆
Герой дня — бродкастер. Пакет, который разросся до таких масштабов, что пол него я создал отдельный репозиторий (он, опять же, будет в закрепленном сообщении). Его задача — упростить создание телеграм рассылок. Но он был бы слишком обычным и скучным, если бы просто делал рассылки. Поэтому я добавил возможность "вклинивать" в него переменные. Все примеры есть в гитхаб репозитории. Больше всего времени отобрал класс MessageBroadcaster, на который сегодня я убил весь день. Однако теперь он работает восхитительно и я рассчитываю на то, что он будет являться самым часто используемым бродкастером в библиотеке в целом. Да, именно в библиотеке, ибо в планах все красиво оформить и залить на pypi. Надеюсь он найдет свое признание в сообществе. Подробности расписывать не буду, ибо кому интересно сможет посмотреть примеры в репозитории и разобраться самостоятельно. Благо сложного там ничего нет. Более того, я уже работаю над русскоязычной статьей, в которой подробно рассмотрю бродкастер и все нюансы его работы.
Для тех, кто так и не понял, что за переменные, прикрепляю скриншот. Да, вся разметка работает четко и правильно. Именно на её ушла большая часть времени, однако я очень доволен своей работой.
#Рассылка #Аиограм #Боты
#Broadcaster #Aiogram #Bots
Для тех, кто так и не понял, что за переменные, прикрепляю скриншот. Да, вся разметка работает четко и правильно. Именно на её ушла большая часть времени, однако я очень доволен своей работой.
#Рассылка #Аиограм #Боты
#Broadcaster #Aiogram #Bots
По абсолютно аналогичной причине прикрепляю изображения отдельно.
Приложен пример работы examples/broadcasting_handler.py
Исходный код вы можете найти в неоднократно упомянутом гитхаб репозитории
Приложен пример работы examples/broadcasting_handler.py
Исходный код вы можете найти в неоднократно упомянутом гитхаб репозитории
cbfa201c45219eb2b7784d26bfae6277.jpg
28.3 KB
Что ж, это свершилось. И снова о бродкастере. Я всё-таки залил его на pypi. Это оказалось куда проще, чем я думал. Пока готовятся документация и статья, расскажу вам о паре изменений, которые пришли к нам по пути к версии 0.0.3.
Мне показалось, что было бы круто, если бы бродкастер использовали люди, которые не занимаются разработкой ботов. Для этого я упростил его использование. Теперь юзеру не нужно передавать инстанс бота, а можно передать лишь токен. Соответственно, всё покрыто проверками и если юзер где-то накосячил, бродкастер поднимет эксепшен.
Ещё были добавлены так называемые "аргументы". Хотел назвать их глобальными переменными, но мне кажется, что у людей какое-то подсознательное отвращение к глобалом, поэтому было принято решение о таком не очень интуитивном названии. Их суть заключается в том, что можно передать словарь аргументов, которые буду одинаковые у всех пользователей и подставятся в чаты автоматически, поэтому вам не придётся генерировать список словарей с одинаковыми данными. Я думаю это тоже значительно упращает работу с бродкастером. Был добавлен пример использования этих аргументов. Как я уже сказал, бродкастер теперь в pypi и любой может установить его себе командой
pip install
Естественно я сразу же добавил бродкастер в темплейт, ибо а почему бы и нет?)
#Рассылка #Аиограм #Боты
#Broadcaster #Aiogram #Bots
Мне показалось, что было бы круто, если бы бродкастер использовали люди, которые не занимаются разработкой ботов. Для этого я упростил его использование. Теперь юзеру не нужно передавать инстанс бота, а можно передать лишь токен. Соответственно, всё покрыто проверками и если юзер где-то накосячил, бродкастер поднимет эксепшен.
Ещё были добавлены так называемые "аргументы". Хотел назвать их глобальными переменными, но мне кажется, что у людей какое-то подсознательное отвращение к глобалом, поэтому было принято решение о таком не очень интуитивном названии. Их суть заключается в том, что можно передать словарь аргументов, которые буду одинаковые у всех пользователей и подставятся в чаты автоматически, поэтому вам не придётся генерировать список словарей с одинаковыми данными. Я думаю это тоже значительно упращает работу с бродкастером. Был добавлен пример использования этих аргументов. Как я уже сказал, бродкастер теперь в pypi и любой может установить его себе командой
pip install
aiogram-broadcaster
и использовать как aiogram_broadcaster
. Обратите внимание, что в одном случае дефис, а в другом — нижнее подчёркивание. Так решил pypi. Естественно я сразу же добавил бродкастер в темплейт, ибо а почему бы и нет?)
#Рассылка #Аиограм #Боты
#Broadcaster #Aiogram #Bots