Телеграм бот на Python с нуля на aiogram
Вставка
- Опубліковано 13 жов 2023
- В видео покажу, как создать свой первый бот и как использовать библиотеку aiogram
Код тут github.com/mahenzon/demo-tg-b...
Поддержать выход роликов (зарплата монтажеру)
- через Tinkoff tinkoff.ru/cf/6kbKWtKhapM
- через CloudTips pay.cloudtips.ru/p/9a8fa641
Ссылки на соцсети:
- Паблик в ВК surenkhorenyan
- UA-cam: / @surenkhorenyan
- RuTube rutube.ru/channel/29899055/
- Канал в ТГ t.me/Khorenyan
Я так долго искал видеоуроки по 3 версии Aiogram. Повезло, что наткнулся на ваше видео. Спасибо за хорошее объяснение. Жду продолжения уроков
кайф, я рад! пожалуйста
приятно
продолжение обязательно будет
Мясо 🔥Надеюсь на скорейший выпуск видео-продолжения. Спасибо, Сурен!
Класс, спасибо! Да, обязательно будет, уже в монтаже 💪
самый четкий! самый лучший! самый доступный гайд, который вот за последнее время я видел. Спасибо огромное Сурен! Не останавливайся, мы в ожидании следующих видео по aiorgam
крутяк, спасибо большое! очень приятно ☺️
останавливаться не планирую 💪
Сурен, проделал большую работу в этом и в новых роликах, отличная подача. Большое спасибо тебе !
Класс, я рад, что вы цените! Пожалуйста!
большое спасибо! классно объясняешь! успехов в развитии канала!
Пожалуйста! Рад, что вам понравилось
Спасибо большое
Супер видос. Спасибо! Даже думать не стал с чьих видео начать знакомство с aiogram. Приступаю к просмотру следующих видео из твоего плейлиста по этой теме. А вообще буду очень рад, если в будущем ты сделаешь видео на тему реального использования aiogram в проектах, на проде.
Класс, пожалуйста! Да, обязательно будет 😊
Редко в подобных видео встречается безупречная речь и правильный русский язык. Сурен, это редкость сегодня. Отличная подача и продукт классный.
Про конечные автоматы бы я послушал.
Класс, спасибо! Приятно. Рад трудиться
Про машину состояний обязательно будет
Да-да, автор - красавчик! Очень качественный контент (как и сам код и понимание процессов, так и видео и дикция)
Согласен меня тоже удивило какая качественная подача у него. Сначала я увидел ролик на NUUM и там был только 1 подписчик(теперь 2 подписчика :)) и подумал что это странно для такого качественного канала и решил перейти на ютуб и меня утешила мысль что здесь хотя бы сколько то есть
@@user-mj9wm6dl1c кайф, спасибо! Очень приятно 🥰
@@user-nw5dj9dl7c ого, прикол, там есть целых два пользователя! 😁
спасибо, приятно!
отлично объясняете, без воды. Приятно слушать грамотную речь без слэнга и слов паразитов.
Кайф, спасибо большое!
Сурен, огромное спасибо. Очень подробно и понятно. Жаль что не было этого видео когда я писал бота для финальной работы в Скиллбокс.
Изучаю сейчас джанго, по вашим видео!
Пожалуйста! И вам спасибо за отзыв 😊
Уж лучше поздно, чем никогда 😅
Как результат на Django? Тоже изучаю, но сталкиваюсь со сложностями
Спасибо за контент. Респект таким типам😊
Пожалуйста! И вам спасибо за лайк и комментарий 🥰
это один из самых крутых видосов про аиограм 3 , уважаемый бро я кайфанул , я просто кайфанул , на ютюбе никто так хорошо не обьясняет как ты , я уже подписался и начал свой путь в освоении аиограм 3
Круто, спасибо! Очень приятно читать ваш комментарий и понимать, что всё это не зря
Давно пользуюсь aiogram, но некоторые фишки были новы и максимально полезны для меня.
Спасибо большое, продолжай в том же духе!🔥
Очень жду видео про то, как правильно:
- Пользоваться callback handlers и Inline keyboard, включая фабрики
- Создать файловую структуру проекта
Класс, рад, что полезно!
Обязательно сделаю и про это, уже есть большой план 💪
Отличное видео, спасибо!
Кайф, пожалуйста!
хорошее видео, все понятно из урока , спасибо!
кайф, пожалуйста! Я рад, что вам понравилось
огромное спасибо за то, что вы делаете
Пожалуйста!
Качественный гайд, спасибо
Пожалуйста! Рад, что вам нравится
приятная подача, комфорт
Спасибо!
Thanks Suren jan ))
You're welcome! I'm glad to help 😊
Огромное спасибо! Просто талант!
Пожалуйста! Рад помочь. Приятно 🥰
Спасибо за новую интересную тему. Да, бот на вебхуке это актуально
Пожалуйста! Рад трудиться 😊
Обязательно расскажу и про вебхук, важная тема
спасибо за видео самый лучший урок когда я либо видел по теме аaiogram
ждём видео про кнопки
Пожалуйста! Про кнопки совсем скоро будет, в течение месяца, надеюсь
Слушайте, а достойно! Много видео посмотрел, практически везде все в кучу свалено, приходится доразбираться. Тут просто берешь и делаешь по образу и подобию, и все работает
Кайф, спасибо! Рад, что вам было понятно и интересно ☺️
Спасибо вам Сурен благодаря вам я сделал свой первый телеграмм бота. Если честно я хотел бы увидеть от вас телеграмм бота который работает с базой данных. То есть пользователь бота пишет в бот свои данные (Имя, дата, город) и эти данные записываются в бд. И на последок было не плохо сделать полноценного очень мощного бота! Удачи вам и спасибо еще раз
Пожалуйста! Обязательно будет тема про базу данных, до этого надо дойти потихоньку, будем небольшими шагами добираться
Годный контент!!! Сделай продолжение как сделать правильную структуру папок (по фэншую), расскажи про машину состояний и т.д. Спасибо!
Супер!
Пожалуйста
про структуру будет, про машину состояний обязательно будет, одна из следующих тем
Сурен привет! В начале своего обучения, не понимал твоей подачи, как то она мне не заходила. Но спустя пол года, ты своими уроками начинаешь меня выручать. Заранее извиняюсь, за свое не объективное мнение в отношении тебя. Сейчас у меня дипломная работа по телеграмм-боту, твое видео многое объясняет непонятных мне моментов. Еще раз спасибо. Успехов тебе в твоём деле!
Привет! Пожалуйста! Рад, что в итоге полезно
Круто Сурен что прикоснулся к теме тг-ботов!
Было бы круто если бы показал как перенести бота на вебхук, тема не самая простая для начинающих + достаточно актуальная когда дело доходит до деплоя на сервер
Вебхук в планах, будет через несколько выпусков!
Очень важная тема, согласен
можно еще в apk файл запокапавать. тоже интересная тема. переносной бот. вместо сервера, старый и достаточно мощный смартфон.
хмм, не задумывался об этом. технически, думаю, это вполне возможно. звучит как любопытный прикол, но там надо будет БД SQLite использовать, либо PG на удаленном сервере. подумаю об этом, мб в этом году получится (но это не точно)
Столько видосов по созданию бота и все делают по разному. С каждой попыткой у меня находится какая то новая проблема, либо переменная не надэйдена либо еще что то.
Такое бывает, это нормально. Главное не останавливаться 😊
Ура! Всё вышло!
Ура! Круто!!
Благодарю🎉🎉🎉
Пожалуйста! 🥰
Здравствуй Сурен, спасибо за видос - доходчиво все рассказал для самых маленьких :)
Пока смотрел - возник вопрос: после обработки сообщения ботом, сообщение удаляется из очереди не обработанных сообщений или остаётся там какое-то время (определённое разработчиками Телеграм)?
пожалуйста! рад, что понравилось и было понятно.
сообщения пропадают "из очереди" при следующем запросе с указанием offset по update id. то есть если мы говорим серверу Телеграм "дай новые события после седьмого", то всё до седьмого события точно исчезнет из очереди. если так не сделать, то какое-то время повисит ещё
Крутотень! Спасибо) нужно видео о том как юзать postgresql из aiogram
Пожалуйста! Ага, обязательно такое сделаю 😊
@@SurenKhorenyan спасибо огромное! С Новым годом! 🙏
@@hithrv пожалуйста 😊
И вас с наступившим
Здравствуйте! Спасибо за отличную подачу и качество материала! У меня вопрос: как быть с токеном бота, если планируешь хостить бот где-то, кроме ПК, на котором разрабатываешь?
Привет! Пожалуйста, рад трудиться.
Токен обычно так и хранят в переменных окружения (в этом или следующем ролике показывал). На всяких хостингах есть возможность указать токен
Жду гайд как в боте к инлайн-кнопке привязать оплату и как подключить его к хостингу
обязательно будет, вопрос только когда..
классное видео, спасибо! А можешь сделать как-нибудь видео, как через телеграмм бот работать с каким-нибудь апи
Пожалуйста!
Может быть сделаю
Годно
Класс, спасибо большое! Рад трудиться 😊
Подскажите ,пожалуйста ,слабо разбираюсь ,а как можно в VSCODE найти файл requirements.txt для заморозки?
Вам его нужно создать самим, команду показывал в видео. Он будет создан командой
поняла,спасибо,просмотрела)
@@angelina.bairaktar пожалуйста
А ещё вопрос такой, можно ли как то узнать или получить от Вас рекомендую как правильно и лучше настроить редактор pyxharm для работы?
Приходите в чат в телеграм канале, там вам могут подсказать
какую версию aiogram вы используете, при повторении кода на видео dispatcher требует позиционный аргумент
В самом начале в документации написано 3, а также на 4:20 показываю и говорю что третья версия
@@SurenKhorenyan а как быть с dispatcher? Требует позиционный аргумент bot и при логировании обработка сообщений в терминале не выводятся
@@user-lj1it7xv8y поставьте актуальную версию, повторите попытку
а виртуальная среда venv уже была у вас установлена по умолчанию..или как нам это сделать?? Это не снуля....это с середины.
Виртуальное окружение настроено заранее, верно. Смотрите видео на канале про старт разработки (установка PyCharm), там показано как окружение при старте активировать
ua-cam.com/video/uM2jXe_QXUM/v-deo.html
Привет, спасибо за урок! Выручи пожалуйста, в общем я написал первого бота прикрепил к нему бд sqlite3 в котором сохраняю id новых пользователей и загрузил на сервер Heroku. Все работает но когда я перезапускаю бота то список бд как будто сбрасывается подскажи как можно это исправить?
Привет! Скорее всего, так и задумано, и не подразумевается, что будут храниться какие-то постоянные файлы. Рассмотрите вариант использования Postgres от того же Heroku
@@SurenKhorenyan Работает, Спасибо!
Крутяк, пожалуйста!
ура гайд по актуальной версии спасибо, как обрабатывать оплату в новой версии aiogram ? все гайды которые были до этого просто устарели
Пожалуйста!
Про обработку платежей планирую записать в следующем месяце. Так что ближе к зиме выйдет, не раньше. Сначала надо основы основ разобрать 😊
Подскажите где можно научиться основам питона (бесплатно и лучше видеоформата) а то просто смотрю видео и ничего не понимаю
Привет
Нужно найти серию уроков на Ютубе, смотреть, повторять всё, что там делают, чтобы набить руку.
Потом придумать себе проект и пилить его
Хорошо попробую
Спасибо
Пожалуйста! 🥰
Эхо-бот это не твой уровень. ;-) От тебя ждем подключение и роботу бота через Веб-хуки, использование middle-ware и сохранение данных в БД , конечно же через Алхимию.
Успехов в развитии канала!
Обязательно будет! Это всё в планах. И поэтому надо начать с основ, чтобы показать, как мы планомерно дошли до вебхуков и мидлварей 😊
Спасибо большое!
@@SurenKhorenyanБрат, сделай пожалуйста без алхимии, обычные sql запросы без орм
@@K3NT_ привет! А какая их этого практическая польза? Писать чистый SQL вручную это лишнее время на разработку и больше шансов на ошибку. Неужели это кому-то нужнее, чем работа с ORM?
@@SurenKhorenyan 👋, просто на канале уже есть про алхимию, а умение писать обычные sql запросы есть почти во всех вакансиях. Писать sql не проблема, а вот когда именно нужно открывать и закрывать подключение к бд непонятно, в интернете я нашёл только уроки где авторы пишут код в один файл без использования функций и классов, как эти примеры применить например на aiogram или fastapi не понятно
@@K3NT_ хм, действительно. Ок, подумаю над этим, но точно не в этом месяце
Топ
Спасибо большое! Очень приятно, рад трудиться 🥰
AttributeError: module 'pkgutil' has no attribute 'ImpImporter'. Did you mean: 'zipimporter'?
В чем может быть проблема при установке aiogram?
Какая версия Python? Нужно хотя бы 3.9, лучше 3.10 и 3.11
@@SurenKhorenyan последнюю скачал 3.12, спасибо за быстрый ответ
@@ginnes001 пожалуйста!
Если проблема остаётся, приходите в чат в тг канале, разберёмся
12:45 я перезапустил и он ругается на 15 линию async def echo_message(message: types.Message) SyntaxError: expected ':' почему так?
Добавьте двоеточие в конце строки. Как раз это и написано в ошибке 🙂
@@SurenKhorenyan капец я глупый...
@@samarsky_ Ничего страшного, учиться на своих ошибках - самое то 😅
У меня при передаче токена token стал красным. Почему так?
Думаю, это просто стиль отображения
Очень достойно. Подскажи название темы пж
Супер!
Тема One Dark
Вот у меня вопрос: почему скилбокс сразу не сделали документацию библиотеки aiogram и вместо неё поставили какой то дешёвый телебот, он же такой простой.
P.S спасибо за видео, всё понятно и интересно, с меня лайк и подписка🙂
Пожалуйста! И вам спасибо 🙂
Почему не сделали это вопрос к продюсеру, скорее всего были причины типа сложностей с асинк и ТД, порог входа другой
Мегахорош
Спасибо большое! 🥰
Очень интересны вебхуки и миддлвари! Спасибо!
Обязательно будет, это уже в планах! Пожалуйста 😌
А с какой частотой проходят обновления, как регулировать нагрузку на сервер телеги?
обновления приходят сразу, библиотека сама занимается получением обновлений.
регулировать нагрузку для чего? надо не слать слишком много сообщений, чтобы не получить 429 too many requests, а в остальном всё ок
@@SurenKhorenyan Так и я про это, слать из программы понятно. А Python не знает о том что, кто то послал сообщение. Значит он обращается к серверу с какой то частотой! С какой?
@@ciklomatсуть long-polling в том, что запрос к серверу висит и ждёт ответа. То есть это не "отправка запроса десять раз в секунду". Тут происходит отправка запроса и ожидание ответа. Будто страница долго грузится. И как только пришло обновление, сервер сразу передаёт его в ответ, библиотека получает ответ и шлёт новый запрос
Сурен, еще раз спасибо за понятное объяснение. Я хотел бы узнать, есть ли какие то варианты бесплатного хостинга такого или другого учебного бота?
пожалуйста!
есть варианты, с кучей ограничений, но есть. раньше было больше, теперь с этим сложнее. потом как-нибудь расскажу про такие способы
Как мне сделать что бы бот постоянно работал? Скажите сервис где именно могу купить сервер не дорого/ бесплатно или какие еще способы есть подробнее?
Недорого на любом VPS, бесплатно мало где, и довольно сложно. Подробнее про публикацию бота будет отдельное видео, не раньше весны
@@SurenKhorenyan спасибо!
можно теперь урок про базу даних как добавлять товар админ паненль что то в етом духе?Спасибо!
Ага, в планах! Обязательно будет
Пожалуйста 😊
имба имба
foo bar spam eggs
У меня к сожалению не вышло. Пишет Unused import statement 'from aiogram import types' и еще 12 ошибок красным
Это вы не использовали то, что импортировали. Попробуйте сделать также как в видео
@@SurenKhorenyanпопробую еще раз с начала.
супер, удачи!
ERROR: Could not find a version that satisfies the requirement airogram (from versions: none)
ERROR: No matching distribution found for airogram почему выдает ошибку?
а какая у вас версия Python? Может быть не поддерживается?
Сейчас я уже не могу сказать, что узнал что-то новое. НО! Почему в материалах к финальной работе в Skillbox не могли просто вставить это видео (хотя бы сейчас)? Вместо этого там лежит неинформативный и очень долгий стрим с мужиком, который снимает себя на дверной глазок, и куратор, который вместо ответа на конкретные вопросы записывает чавкающие видео с вообще посторонними ответами... Вам, Сурен, конечно же лайк, подписка!
Привет! Эти вопросы надо направлять продюссеру скилбокс. Я исполнитель, мой сценарий, моя запись. Но план и цели по темам спускают сверху.
И моя работа на курсе Джанго, а по тг боту я там ничего не делал
Рад, что мой труд вы оцениваете выше, приятно!
@@SurenKhorenyan да, я это понимаю. Вопрос больше так, в космос. Или на случай, если Вы станете продюсером в скилах))
Хах. Ну, продюсировать буду вряд ли, так как это не программистская работа, но стать программным директором реально (если вдруг предложат, конечно)
Если я хочу установить аиограм пишет ошибка что делать
Исправить ошибку!
Ну теперь придется и про машину состояний. и про мидлвари и про все остальное ))). А там еще как БД использовать.... Ой тем много
Заметил что
await bot.delete_webhook(drop_pending_updates=True)
стало работать некорректно. Периодически не скипает апдейты. aiogram==3.0.0
Обязательно про это всё будет. Машина состояний это вообще главная причина, почему в далёком 2018 году я выбрал эту библиотеку для своих ботов
Про удаление вебхука подумаю ещё
комент. ну ты знаешь)
Крутяк, спасибо 🥰
Всё. Разобрался и сделал. Но пришлось значение 15 строки удалить полностью «INFO» Выдавал ошибку.
хорошо, что удалось разобраться!
@@SurenKhorenyan К слову. Неожиданно пошел спам в консоли. Всё перепроверил - в норме. Возможна ли ситуация с багом?
@@DR-rs9ux о каком спаме речь?
баг всегда возможен
если нужна помощь с кодом, пишите в чат в телеграме
@@SurenKhorenyan Там указано время в секундах. Думаю это то, о чем была речь изначально. Сейчас планирую заняться и посмотреть что не так. Да. Конечно зайду
Не импортируется библиотека, что делать?ERROR: Could not find a version that satisfies the requirement aiogrampip (from versions: none)
вы неправильно набираете команду, надо так:
pip install aiogram
да, так и сделал, всеравно пишет, что не может импортировать
@@SurenKhorenyan
@@user-tn1bj7rg1p приходите в чат в Телеграм, там поможем
на новых версиях пайтона аиограм не работает, нужно скачать версию 3.11
@@user-qr4wh7mo3y насколько новых? На 3.12 уже должен работать
github.com/aiogram/aiogram/pull/1354
26:21 А как смайлики вызвать?
На маке в настройках клавиатуры есть возможность указать, что делать на нажатие кнопки Fn (её теперь планетой ещё обозначают). Я выбрал показывать эмодзи
Если ты из России, то не можешь быть контрибютером. Даже Тишке отказано
Не знаю, что там с Тишкой. Мой MR совсем недавно влили
Но очень жаль, конечно, что такое ограничение в принципе может быть 😪
когда новый ролик?))))
новый ролик по aiogram записан две недели назад и сейчас в монтаже. скорее всего выйдет в следующее воскресенье
подписывайтесь в телеграм чтобы не пропустить анонс!
@@SurenKhorenyan уже подписан
круто, спасибо!
а что это за тема в pycharm?
Это One Dark
Тайм коды нужны, брат
Брат, сам жду когда кто-нибудь придёт и напишет их, брат
супер
Спасибо! Рад трудиться ☺️
какой функционал бота?
Смотря какого
Бот из вводного видео умеет только делать эхо
Блин, а я вообще не могу aiogram установить всё перепробыуал😢
на новых версиях пайтона аиограм не работает, нужно скачать версию 3.11
Хорошо, буду пробывать! Спасибо
У меня одного сервер постаянно падает
Какой сервер? У меня не падает 🤔
@@SurenKhorenyan код пишет таймоут
@@apecharfoxstudio2526может быть проблемы с интернетом?
Приходите в чат в Телеграм канале, обсудим
Ну "с нуля" громко сказано
Конечно, условием, что вы уже знакомы с Python
Traceback (most recent call last):
File "C:\Users\knigh\PycharmProjects\pythonTelegram1\ver3\main.py", line 12, in
dp = Dispatcher()
^^^^^^^^^^^^
TypeError: Dispatcher.__init__() missing 1 required positional argument: 'bot'
почему так?
У вас старая версия aiogram. Обновите до 3: pip install --upgrade aiogram
Привет! @SurenKhorenyan, помоги пожалуйста. Что делаю не так? Логирование добавил а при запуске main.py всё равно ничего не происходит.
Привет! Скорее всего вы сделали что-то не так. Попробуйте ещё раз. Также можете прийти в телеграм чат, там покажете код, вам подскажут
2ую неделю учу питон. После парсеров решил учить питон на ботах. Это нормально что я ничерта не понимаю что он делает?) От куда он знает все эти методы? Я как понял сначала надо выучить английский, потом прочитать всю документацию а после уже включать эти уроки?
Да, всё ок! Учить английский надо обязательно. Читать доку полезно по мере необходимости, целиком читать скучно и не нужно
Не страшно, что многое непонятно. Вы этот долг знаний позже компенсируете. Боты отличный способ ворваться в программирование!
Буду пробовать сегодня по вашим урокам что то писать. Хочу управления своими партнёрами в тг перенести. Решил вдруг в 27 лет программировать начать 🤣
Никогда не поздно! Удачи вам. Потом приходите хвастаться в тг чат, показывать что получится
у меня asycio в if __name__ == "__main__": красным подсвечивается что делать
В самом верху файла сделайте import asyncio
При вводе await message.answer ничего не происходит, даже код не подсвечивается как у вас
такое может быть, всё зависит от того, как вы писали код и где. плюс у меня другая тема
если нужна помощь, приходите в чат в тг канале, обязательно подскажем
@@SurenKhorenyan Спасибо, заработало!
@@Konoplya_102 супер 🔥