Python Telegram Bot
Открыть в Telegram
☑️ Заявки принимаются автоматически! Обучаем созданию и продвижению чат-ботов в телеграм. ссылка: @pybotg связь: @oksi_young https://telega.in/channels/+Mj_twnrYuAxkZmUy/card/?r=BrHKEWMo
Больше5 003
Подписчики
Нет данных24 часа
-67 дней
+1730 день
Архив постов
5 003
Продолжение к посту выше
Теперь давайте более детально рассмотрим наш хендлер
start. Если пользователь просто нажмет кнопку start для запуска бота, и это происходит в личной переписке, то исполняется функция, имеющая вид: async def bot_start(message: types.Message). В ней мы получаем объект юзера бота, то есть в теле функции будет подобная запись: bot_user = await dp.bot.get_me( ), которая будет получать user_name пользователя.
Поэтому, когда вы формируем deep_link, мы прописываем нашу ссылку на телеграмм после которой добавляем имя бота. Deep_link будет выглядет следующим образом: deep_link = f"http://t.me/{bot_user.username}?start=123", где ?start=123 является параметром deep_link. После чего, бот отвечает пользователю по следующему сценарию: await message.answer(f"Привет, {message.from_user.full_name}!n" f"Вы находитесь в личной переписке. n" f"В вашей команде нет диплинка. n" f"Ваша диплинк ссылка - {deep_link}")5 003
Аннотации функций
Аннотация функций совершенно опциональная мета-информация о типах, используемых функциями, определяемых пользователем.
Аннотации хранятся в атрибуте функции
__annotations__ как словарь и не оказывают влияния ни на какую часть функции. Аннотации параметров определяются двоеточием после имени параметра, за которым следует выражение эквивалентное значению аннотации. Возвращаемые аннотации определяется литеральным ->, за которым следует выражение между списком параметров и двоеточием, обозначающее завершение оператора def. В следующем примере есть позиционный аргумент, ключевой аргумент и аннотированное возвращаемое значение (ФОТО)
#python_обучение5 003
Создайте индивидуальность
Аватарка, словарный запас, набор эмотиконов, тон общения и вообще любые составляющие интерфейса вашего бота ориентируйте на ту аудиторию и задачу, которую вы выбрали. При этом пользователь должен знать, что он общается с роботом — не пытайтесь обманывать и выдавать бота за человека. Но для комфортного взаимодействия бот всё же должен имитировать некоторые человеческие качества.
5 003
🐍 Хорошее не бывает дешёвым, но бывает бесплатным !
Укус питона - здесь ребята пишут авторские уроки по лучшим зарубежным методикам обучения. С этими материалами вы сможете освоить основы python за неделю.
Подписывайтесь, ссылка не вечная! @byteofpython
5 003
Продолжение к посту выше
Поэтому тип ответа
return, который мы возвращаем должен быть True. В функции check сравниваем, если message.chat.type равняется types.ChatType.PRIVATE(т.е приватный), значит это True, иначе False. Точно так же можно прописывать фильтры и в функцию check, передавать любые другие условия.Но не забывайте возвращать булевый ответ.
Давайте же рассмотри и другие фильтры, которые у нас есть. И так, у нас есть хендлер на команду help, а так же встроенный фильтр CommandHelp, который мы импортируем из aiogram.dispatcher.filters.builtin. В это хендлере у нас так же есть message.handler, в который летят текстовые сообщения, и функция bot_help. В функции bot_help прописывается текст сообщения - ответа в виде списка, который вы часто можете видеть при написании "/".5 003
Продолжение к посту выше
Теперь давайте разберем фильтр
IsPrivate. Перейдем в папку filters->private_chat. Для того,чтобы создать собственный фильтр мы должны импортировать класс BoundFilter из aogram.dispatcher.filters.
Создаём класс IsPrivate, который наследуется от класса BoindFilter, т.е мы создаём копию этого фильтра, в которой мы перезаписываем функцию cheсk. В эту функцию у нас будут лететь тот тип апдейта, который у нас прописан в хендлере. Т.е если мы указали message_handler в IsPrivate, то соответственно в check будет лететь message: types.Message.
По результату, если фильтр вернёт буллевый True, то фильтр выполняется, значит мы будем использовать наш хендлер. Если False, то значит фильтр не выполняется и соответственно в хендлер не попадает это сообщение.5 003
Starter Pack для принятия в IT уже готов, со всеми сливами:
🖥 Полка Разработчика — доступ к платным книгам по программированию;
🖥 Кладовая Книг — сборник полезных книг программирования;
🖥Архив Разработчика — подборка изданий для разработчиков;
🚽 IT Memes — свежий IT юмор, отобранный нейросетью;
🗞 3D News — актуальные новости из IT-индустрии.
Сохраняй, пригодится5 003
На что обратить внимание при анализе рекламы конкурента
Мы уже упоминали, что в Telegram основной способ продвижения — посевы. Поэтому на этапе анализа конкурентов посмотрите, где и какие посевы они делают. Найти их также можно через Tgstat или Telemetr.
В сервисах есть информация о том, какие каналы цитировали или упоминали анализируемый канал. Таким образом можно посмотреть, когда и где писали о вашем конкурентах, и найти их рекламные объявления.
• В каких каналах продвигаются - оцените тематику каналов, количество аудитории, степень вовлечения подписчиков, охваты канала
• Рекламный креатив - используют ли визуал, если да, то что на баннере, какой текст, есть ли люди, или просто демонстрация продукта
• Оффер - как мотивируют подписаться, перейти в чат-бот
• Текст - нативный текст, в авторском стиле или рекламный текст от компании
#маркетинг
5 003
Лямбда-выражения
Небольшие анонимные функции могут быть созданы с помощью ключевого слова
lambda. Функция возвращает сумму своих двух аргументов: lambda a, b: a+b. Лямбда-функции можно использовать везде, где требуются объекты функции. Они синтаксически ограничены одним выражением. Семантически, они лишь «синтаксический сахар» для обычного определения функции. Как и определения вложенных функций, лямбда-функции могут ссылаться на переменные из содержащей их области видимости (Код 1).
Пример выше использует лямбда-выражение для возврата функции. Другое применение — передать маленькую функцию как аргумент (Код 2)5 003
Продолжение к посту выше
К тому же встроенный фильтр позволяет прописывать регулярное выражение для
deep link и отлавливать его именно в этом хендлере, т.е допустим мы сделаем 2 хендлера и в верхнем прописываем регулярное выражение, бот будет выявлять тех кто нажал start с depp link, а внизу сделаем функцию без него, тогда бот будет сообщать об отсутствии depp link. Тем самым мы разделяем тех, кто с depp link и кто без.
Встроенных фильтров достаточно много. Покажем самые полезные. Это text и user_id. Для этого мы пройдем в handlers-> user_admin. Тут мы тоже импортировали созданный нами фильтр IsPrivate из папки filters. Так же из конфига импортировали список администраторов бота. В этот раз в хендлере мы прописали помимо IsPrivate еще text="secret" и user_id=admins. Этими фильтрами мы хотим, чтобы в хендлер попадало только слово secret и только от пользователей, которые содержатся в массиве admins.5 003
"Теория — это когда все известно, но ничего не работает. Практика — это когда все работает, но никто не знает почему. В @The_Python_Universe объединяют теорию и практику, повезло питонистам, жаль с физикой такого не было"
© Альберт Эйнштейн
5 003
5 Официальных ботов сервисов
• Gmail Bot - Официальный почтовый клиент Google. Позволяет читать электронные письма и отвечать на них не заходя в приложение или на сайт
• AviasalesBot - Официальный бот Aviasales. Отслеживает цены на билеты по выбранным направлениям и присылает уведомления, когда появляются скидки на 30—50%
• Служба доставки «СДЭК» - Официальный бот СДЭК. Отслеживает перемещения заказа, а также позволяет выбрать время доставки, поменять адрес или посмотреть режим работы пункта выдачи
• Dr.Web - Проверяет на вирусы небольшие файлы, которые можно переслать боту. Можно добавить в чат, тогда бот будет автоматически проверять все файлы
• Яндекс-музыка - Распознает песни. Если отправить боту аудиосообщение с отрывком трека на 5—10 секунд, то он ответит названием и ссылкой
5 003
Кодим на коленке - прогерское комьюнити, а также все про бэкенд-разработку на Python, Java, C++, C#, PHP в коротких поленых статьях
5 003
Выберите специализацию
Не надо пытаться угодить всем и собирать много разных функций, ничего хорошего из этого не выйдет. Определите конкретные функционал, тематику и аудиторию — сконцентрируйтесь на них.
5 003
На что обратить внимание при анализе контента конкурентов
Изучите контент и посмотрите, какие посты набирают больше реакций и просмотров. В дальнейшем подобные рубрики и форматы станут основой контент-плана.
• Как повышают уровень доверия - отзывы, посты о компании и сотрудниках, демонстрация процесса работы
• Как повышают уровень вовлечения - опросы, игры, загадки, интерактивы, маханики с ботами
• Как продают - скидки, акции, специальные предложения, обзоры товаров, новинки
• Как помогает чат-бот - ответы на вопросы, запись на услугу, подбор продукта, анонс скидок, сбор информации для поддержки или менеджера
Также обратите внимание, по какой схеме работают конкуренты: только канал, только чат-бот или канал + чат-бот.
Если по третьей схеме, то посмотрите, как реализовано взаимодействие бота и канала, из каких публикаций перенаправляют в бот и для чего, какую роль в воронке продаж выполняют канал и бот, на каких этапах воронки их используют.
#маркетинг
5 003
Сливаем вам 2 архива на 500 курсов!
➤ Backend и языки программирования:
- Python
- REST
- Java
- PHP
- Go
- SQL
- NoSQL
- C#
- C++
- Rust
- JavaScript
- Другое
➤ Frontend и Web-дизайн:
- JavaScript
- Figma
- Web-Дизайн
- HTML/CSS
- Верстка
- UI/UX
- Другое
