Telegram Bot на Python. Часть 2 - aiogram bot. Python, Django, Django Rest Framework.

  Рет қаралды 9,466

Кибер Весло

Кибер Весло

Күн бұрын

Пікірлер: 57
@ViacheslavUstinov-g4x
@ViacheslavUstinov-g4x 3 жыл бұрын
Благодарю за материал! С таким контентом нужно смело ссылочку на донаты прикручивать) Очень приятная связка Джанго-Рестапи-Бот отдельным приложением. Надеюсь, запишете в будущем тему рест-апи -> отдельное шаблонное веб-приложение на реакте например . Тема явно востребована)
@cyber-paddle
@cyber-paddle 3 жыл бұрын
Спасибо за отзыв. С реактом не приходилось работать, работал с vue - она как-то лучше зашла... Если мы джангу разворачиваем рестом к клиетам, то тут уж все равно кто на той стороне: реакт, вью или еще одна джанга... Джанга только начала переход к асинхронности, поэтому в моменте хорошим вариантом для для рест апи может быть fast api фреймворк, который асинхронный по рождению...
@cyber-paddle
@cyber-paddle 3 жыл бұрын
А в последнем видео вообще vanilla js хватило...
@vladstrilak727
@vladstrilak727 2 жыл бұрын
Кибер Весло доброго дня,а как зделать щоб callback_query_handler створити саме перше состояния а не через message handler.Буду благодарний за ответ
@cyber-paddle
@cyber-paddle 2 жыл бұрын
Привет! А в чем отличие? Вот месседж: @dp.message_handler(commands='train_all', state="*") - реагировать на команду train_all, в любом состоянии дальше внутри обработчика устанавливаем конкретное состояние - await GameStates.all_words.set() Соотв в колбеке будет как-то так... @dp.callback_query_handler(lambda c: c.data in ['das', 'die', 'der'], state="*") реагировать на любой стейт а внутри обработчика что-то типа - await GameStates.all_words.set() - установить нужный стейт... Как-то так... (если правильно понял задачу)
@vladstrilak727
@vladstrilak727 2 жыл бұрын
@@cyber-paddle Доброго дня спасиба за відповідь но мне нада както при нажатии кнопки спрацював callbacl_querly_handler в якому би вклячилас fsm Був би вдячний за допомогу.
@Hande_hoch
@Hande_hoch Жыл бұрын
51:14 у кого бот отвечает всё время Nein, тут надо сделать вместо if answer == data.get(answer), if answer == data.get('answer'), т.е. взять в кавычки
@cyber-paddle
@cyber-paddle Жыл бұрын
Можете пулреквест сделать...
@Hande_hoch
@Hande_hoch Жыл бұрын
я не нашел ссылку на репу. И в гитхабе по поиску тоже не нашел@@cyber-paddle
@ФоксиДжентельмен
@ФоксиДжентельмен 2 жыл бұрын
Спасибо!!!
@cyber-paddle
@cyber-paddle 2 жыл бұрын
Пожалуйста!
@vasiliygorelov8037
@vasiliygorelov8037 11 ай бұрын
Спасибо за видео! Есть ли способ отправить по http данные с сервера на tg бота(не запросить, а отправить)? Чтобы при этом логика aiograma не разрушилась. По идее есть же система вэбхуков, поэтому можно как-нибудь подшаманить(если предположим, что у aiograma нет встроенной безопасности)?
@cyber-paddle
@cyber-paddle 11 ай бұрын
Так с ходу не подскажу, но aiogram - обертка для телеграмм API, а это значит, что запрус можно пульнуть прям туда...
@АртемБеляков-к7з
@АртемБеляков-к7з 10 ай бұрын
А есть где-то код проекта? На гитхабе, например?
@cyber-paddle
@cyber-paddle 10 ай бұрын
github.com/dvk-net/german-nouns-gender-trainer-telegram-bot
@afoninsb
@afoninsb 2 жыл бұрын
Скажите, пожалуйста, откуда вы взяли значение переменной WORDS_API_URL_RANDOM?
@cyber-paddle
@cyber-paddle 2 жыл бұрын
импортируется из local_settings.py, который добавлен в гитигнор и поэтому его нет в репозитории (так как он локал, под каждый проект). Его надо создать... В первой части должно быть....
@АнтонНаумов-о6з
@АнтонНаумов-о6з Жыл бұрын
Добрый день. Благодарю за ролик. Пробовал делать все за вами. Но в итоге получаю всегда ответ бота Nein. В чем может быть ошибка. Посоветуйте пожалуйста что делать
@cyber-paddle
@cyber-paddle Жыл бұрын
Спасибо за отзыв, ролик уже давно в сети, возможно API поменялся ...
@mimocrocodile5069
@mimocrocodile5069 2 жыл бұрын
46:25 А не проще ли так: data = await state.get_data() Или это чем-то хуже?
@cyber-paddle
@cyber-paddle 2 жыл бұрын
Дело художника...
@alekseyveld7559
@alekseyveld7559 2 жыл бұрын
Большое спасибо за материал! Подскажите пожалуйста как запустить бота через manage.py в том числе в режиме демона?
@cyber-paddle
@cyber-paddle 2 жыл бұрын
Спасибо за отзыв! manage.py это штука Джанги.. В режиме демона - в линуксе есть несколько вариантов... stackoverflow.com/questions/17954432/creating-a-daemon-in-linux Для вин это наверное будет сервис
@cloutstefan7030
@cloutstefan7030 2 жыл бұрын
Привет, застрял на 51 минуте, нажимаю правильный ответ, а в телеграме все равно пишет что неверно, не знаю что делать, проверил код, я решил узнать по print(answer) и в телеграмме выдает None
@cyber-paddle
@cyber-paddle 2 жыл бұрын
Варианта 2: 1. таки ошибка в коде. 2. мог измениться API
@astxdx
@astxdx Жыл бұрын
такая же проблема потом понял как исправить: вместо if answer == data.get(answer), надо поставить: if answer == data['answer']
@Ігор-ч5м7о
@Ігор-ч5м7о Жыл бұрын
@@astxdx спасибо)
@eduardmart1237
@eduardmart1237 Жыл бұрын
А как праильно делать асинхронные HTTP запросы с aiogram bot?
@cyber-paddle
@cyber-paddle Жыл бұрын
На сторонний ресурс?
@eduardmart1237
@eduardmart1237 Жыл бұрын
​@@cyber-paddle Да. но я увидел в видео пример aiohttp.
@eduardmart1237
@eduardmart1237 Жыл бұрын
@@cyber-paddle А по опыту как лучше всего делать асинхроные запросы к постгресу? Не ломает ли psycopg2 асинхронность особенно если очень долгий запрос?
@cyber-paddle
@cyber-paddle Жыл бұрын
@@eduardmart1237 ну вот например aiopg.readthedocs.io/en/stable/
@fedyasumkin1333
@fedyasumkin1333 Жыл бұрын
Застрял на 11 минуте импортирования фром бот АПП импортируем дп, выкидывает ошибку importerror attempted relative import with no known parent package, я уже изменил "bot_app" на ".bot_app.app" и все равно выдаёт эту ошибку, а если делать как на видео, то оно вообще не хочет импортировать
@cyber-paddle
@cyber-paddle Жыл бұрын
Надо проверь имена файлов(модулей) и возможно кольцевой импорт
@fedyasumkin1333
@fedyasumkin1333 Жыл бұрын
@@cyber-paddle разобрался, нужно было точку убрать перед .bot_app.app
@fedyasumkin1333
@fedyasumkin1333 Жыл бұрын
Возможно проблема в разнице версий vsc
@cyber-paddle
@cyber-paddle Жыл бұрын
@@fedyasumkin1333 Сомнительно... VSC - это продвинутый текстовый редактор. Он может подсказывать что-то не так, но никак не быть причиной ошибки импорта...
@fedyasumkin1333
@fedyasumkin1333 Жыл бұрын
@@cyber-paddle понял, но в любом случае, ликвидация точки перед bot_app и добавление .app после бота помогло, на будущее, если кто-то ещё столкнется с такой проблемой
@TechWithSabri
@TechWithSabri Жыл бұрын
Please bro can you mention the documentation you have used to create this telegram bot please. By the way: Thank u so much bro for tour time, I enjoyed with your series, it was in Russian but i used translator. 🎉🎉🎉
@cyber-paddle
@cyber-paddle Жыл бұрын
Hello! I have been thinking about creating content in English... Documentation... docs.aiogram.dev/en/latest/ Plus exploration and google )
@TechWithSabri
@TechWithSabri Жыл бұрын
​@@cyber-paddle Thank you so much Bro for the docs If you want to make it in English it will be better because as you know the audience are English talkers, anyway i will keep watch your vidos Appreciated man 👌🏻
@madmax6943
@madmax6943 Жыл бұрын
А то, что связано с бекендом и то, что связано с самим ботом деплоится на разных серверах или как?
@cyber-paddle
@cyber-paddle Жыл бұрын
Как угодно...
@madmax6943
@madmax6943 Жыл бұрын
@@cyber-paddle а как бы вы сделали?
@cyber-paddle
@cyber-paddle Жыл бұрын
@@madmax6943 ну вообще, выставление наружу API и взаимодействие по сети (протокол HTTP(s)) подразумевает разнесение сервисов.
@madmax6943
@madmax6943 Жыл бұрын
@@cyber-paddle понял, спасибо за ответ.
Python VS С# | Согласен / Не согласен
14:27
Технологии в Контуре
Рет қаралды 34 М.
OYUNCAK MİKROFON İLE TRAFİK LAMBASINI DEĞİŞTİRDİ 😱
00:17
Melih Taşçı
Рет қаралды 13 МЛН
Spongebob ate Patrick 😱 #meme #spongebob #gmod
00:15
Mr. LoLo
Рет қаралды 20 МЛН
How Strong is Tin Foil? 💪
00:26
Preston
Рет қаралды 146 МЛН
Deploying our Django project to hosting from zero in 25 minutes
24:30
Кибер Весло
Рет қаралды 18 М.
CI/CD - Простым языком на понятном примере
15:29
Артём Шумейко
Рет қаралды 52 М.
OYUNCAK MİKROFON İLE TRAFİK LAMBASINI DEĞİŞTİRDİ 😱
00:17
Melih Taşçı
Рет қаралды 13 МЛН