Ботостроение Telegram. Фильтры. Aiogram3 - полное руководство.

แชร์
ฝัง
  • เผยแพร่เมื่อ 31 ม.ค. 2025

ความคิดเห็น • 75

  • @DobryDrug
    @DobryDrug ปีที่แล้ว +1

    Это все невероятно круто. Понятно мне мало чего, но если немного думать во время следования инструкциям - понятно чуть больше. А если много думать сразу - вообще ничего не понятно. ИМХО - Вы прекрасно чувствуете границы зоны ближайшего развития(ZPD). Большое спасибо!

    • @nztcoder
      @nztcoder  ปีที่แล้ว

      Спасибо за теплые слова. Ценно!

  • @yuriismakota9574
    @yuriismakota9574 ปีที่แล้ว +3

    Автор молодец, наверное лучшее, подробное и доходчивое объяснение в данном направлении. То что нужно для начинающего разработчика. Желаю авторов успехов!

    • @nztcoder
      @nztcoder  ปีที่แล้ว

      Благодарю.

  • @itspecial100
    @itspecial100 2 ปีที่แล้ว +2

    Спасибо! Наконец-то показали как отправлять фото через скрепку и сохранять его!!!

  • @chilltime_moments
    @chilltime_moments 2 ปีที่แล้ว +3

    Огромный лайк за годный контент!

  • @АнатолийГО-ж2п
    @АнатолийГО-ж2п ปีที่แล้ว +15

    Зачем использовать 3 версию, если ты используешь фильтры из 2 версии? Magic filters упрощает работу, а ты только усложняешь код и делаешь его для начинающих сложнее.

    • @mrBro-gk5kk
      @mrBro-gk5kk 10 หลายเดือนก่อน

      а можете подсказать гайды поподробнее насчет фильтров?

    • @АнатолийГО-ж2п
      @АнатолийГО-ж2п 10 หลายเดือนก่อน

      @@mrBro-gk5kk что именно тебя интересует?Можно без фильтров в теории обойтись.А так в документации описан функционал и применение.

    • @hunterplay2061
      @hunterplay2061 9 หลายเดือนก่อน

      как с помощью magic filters записать сточку с контактом?

  • @iPyotr
    @iPyotr ปีที่แล้ว +1

    Отличный видос!

  • @RomanPenzov-ce5ub
    @RomanPenzov-ce5ub 9 หลายเดือนก่อน

    Добрый вечер. В видео сообщается, что код будет под видео, но у меня под видео нет кода, а только описание

  • @artemkvasha
    @artemkvasha ปีที่แล้ว +4

    ContentTypesFilter не работает в новой версии aiogram (в 3.2 его просто нет). Вместо него можно использовать F.content_type == ContentType.

    • @nztcoder
      @nztcoder  ปีที่แล้ว +1

      О чем и сказано в видео по magic filter

  • @Igor245390
    @Igor245390 ปีที่แล้ว +3

    добрый день. хотелось бы увидеть регистрацию хендлеров через декоратор и роутеры

    • @nztcoder
      @nztcoder  ปีที่แล้ว

      Соответствующее видео появилось на канале.

  • @NikolaySlautin
    @NikolaySlautin ปีที่แล้ว

    2:15 "указать полный путь до нужной папки" - приведите пример кода, какой там синтаксис? Например, хочу сохранять на "D:\test\Download" Как будет выглядеть строка вместо указанной в видео await bot.download_file(file.file_path, 'photo.jpg')?

  • @TheSergeyVideo
    @TheSergeyVideo 8 หลายเดือนก่อน

    Подскажите, пожалуйста, бот с правами админа загружен в КАНАЛ, (нужен что бы отдать ID канала), хэндлер для теста без фильтров, в привате у бота хэндлер отрабатыват, а в канале нет, нужно решение или подсказка, премного благодарен любой информации.

  • @storm9479
    @storm9479 ปีที่แล้ว +1

    У меня бот пишет что я отправил свой контакт, даже когда я отправляю чужой, думал может где перепутал чего, нет вроде все правильно, 3 раза перепроверил, не знаете в чем может быть дело?

    • @nztcoder
      @nztcoder  ปีที่แล้ว

      Чудес не бывает. Не может один и тот же код по-разному отрабатывать. Где-то ошибка.

    • @pshyhopat
      @pshyhopat ปีที่แล้ว

      ты исправил? подскажи как

  • @CristianoRonaldo-ox9vz
    @CristianoRonaldo-ox9vz ปีที่แล้ว +1

    Спасибо большое. интересное видео. У меня проблемка ContentTypesFilter не импортируется. В документации не разобрался, поэтому не понял как это починить. подскажите

    • @nztcoder
      @nztcoder  ปีที่แล้ว

      Такого фильтра больше нет. Используй магические фильтры. Видео по ним есть на канале.

    • @CristianoRonaldo-ox9vz
      @CristianoRonaldo-ox9vz ปีที่แล้ว

      @@nztcoder спасибо

  • @madeinprosto
    @madeinprosto 2 ปีที่แล้ว +8

    Да, автор молодец, но мимо аудитории для которой это все записано, потому что очень сложно и непонятно.

  • @boba2601
    @boba2601 2 ปีที่แล้ว +3

    У одного меня не находить "ContentTypesFilter"?

    • @АнатолийГО-ж2п
      @АнатолийГО-ж2п ปีที่แล้ว

      У тебя это не будет работать, используй Magic filters из документации.

    • @БежанянГеворг
      @БежанянГеворг ปีที่แล้ว

      @@АнатолийГО-ж2п а как его использовать ?

    • @nztcoder
      @nztcoder  ปีที่แล้ว

      th-cam.com/video/SS6_PexwB2Y/w-d-xo.html

  • @Iwtin
    @Iwtin 2 ปีที่แล้ว +1

    ты очень крутой, поэтому видео для профи, но профи и без тебя это все напишут

    • @nztcoder
      @nztcoder  2 ปีที่แล้ว +1

      Нееее, для профи есть более зубодробительные примеры. Мои видео для тех, кто знает хотя бы самые основы пайтона. Можно сказать - готовые сниппеты кода для реальных проектов.

    • @pavku
      @pavku ปีที่แล้ว

      @@nztcoder Спасибо за твой труд и годный контент! А где можно посмотреть зубодробительные примеры?

  • @indominusmonster6433
    @indominusmonster6433 ปีที่แล้ว

    есть проблемка, класс ContentTypesFilter отсутствует в новых версиях aiogram. вопрос: что делать?

    • @nztcoder
      @nztcoder  ปีที่แล้ว

      Использовать магический фильтр. F.content_type. На канале есть видео про него.

    • @indominusmonster6433
      @indominusmonster6433 ปีที่แล้ว

      @@nztcoder спасибо

  • @pshyhopat
    @pshyhopat ปีที่แล้ว

    добавил словарь данных в json viewer а там просто нету раздела contact с phone_number. что делать?

    • @pshyhopat
      @pshyhopat ปีที่แล้ว

      номер, у меня если что открыт, ошибка так и осталась

  • @Pe30HaHs
    @Pe30HaHs 2 ปีที่แล้ว +1

    А почему BoundFilter должен быть в классе?

  • @АннаЛазаренко-ы9з
    @АннаЛазаренко-ы9з ปีที่แล้ว

    Не получается файлы загружать, выдает ошибку 'Telegram server says - Bad Request: invalid file_id'. Хотя id файла печатает. Не нашла решения

    • @nztcoder
      @nztcoder  ปีที่แล้ว

      Возможно file_id получен не от бота, которым пытаешься отправить медиафайл

    • @АннаЛазаренко-ы9з
      @АннаЛазаренко-ы9з ปีที่แล้ว

      @@nztcoder ошибка была из-за того, что вместо download_file написала просто download.

  • @liubick
    @liubick ปีที่แล้ว

    Не запускается бот, и пишет, что в этой строке:
    dp.startup.register(get_photo, ContentTypesFilter(content_types=[ContentType.PHOTO]))
    типа такая ошибка:
    TypeError: register() takes 2 positional arguments but 3 were given
    Подскажите, пожалуйста, как исправить.

    • @nztcoder
      @nztcoder  ปีที่แล้ว +1

      Ты используешь регистрацию функции при запуске бота, нужно использовать регистрацию message. dp.message.register....

    • @liubick
      @liubick ปีที่แล้ว

      @@nztcoder Спасибо большое!

  • @USER_____Oo_____USER
    @USER_____Oo_____USER ปีที่แล้ว

    Привет, уже нет ContentTypeFilters, теперь F

    • @nztcoder
      @nztcoder  ปีที่แล้ว

      Да. О чем и сказано в видео по magic filter

    • @USER_____Oo_____USER
      @USER_____Oo_____USER ปีที่แล้ว

      @@nztcoder Да, все отлично там рассказано, спасибо за контент) давай ещё что-нибудь интересное)

  • @nztcoder
    @nztcoder  ปีที่แล้ว +8

    В последних версиях aiogram фильтр ContentTypesFilter был удален. Вместо него можно использовать MagicFilter.
    Переходим сюда th-cam.com/video/SS6_PexwB2Y/w-d-xo.html и знакомимся с магическими фильтрами.

  • @vitalik3447
    @vitalik3447 2 ปีที่แล้ว

    Спасибо! Видео очень познавательно. Почему решили писать бот на версии 300b4 а не 300b6? И тогда чем aiogram3 прелпочтительней aiogram2?
    на 300b6 нет ContentTypesFilter. пришлось откатываться на 300b4/

    • @nztcoder
      @nztcoder  2 ปีที่แล้ว

      На момент записи видео 3.0.0b4 была последней версией Аиограм.
      Контент тайп фильтр можно заменить на магическим фильтром.
      F.video
      F.photo
      И так далее

    • @БежанянГеворг
      @БежанянГеворг ปีที่แล้ว

      @@nztcoder как оплатить обучение ?

  • @sweezy9804
    @sweezy9804 2 ปีที่แล้ว +2

    а зачем регистрировать функции если можно перед ними писать @dp.message_handler(command=["start"]) ?

    • @sweezy9804
      @sweezy9804 2 ปีที่แล้ว

      а для эхо @dp.message_handler()

    • @nztcoder
      @nztcoder  2 ปีที่แล้ว +9

      Можно и декораторами, да. Кому как удобно, мне удобнее когда сразу виден порядок регистрации хэндлеров - не нужно "гулять" по файлам и искать хэндлеры. Очень актуально для больших проектов.

  • @MRRXS_
    @MRRXS_ ปีที่แล้ว

    Стоп, у 3 версии, не надо писать @dp.handler?

  • @Russian_trash_news
    @Russian_trash_news ปีที่แล้ว

    Вот мне стало интересно, код у нас один на двоих. Но по-видимости библиотеку изменили, так как, в данных уроках у меня не отправляет даже эти сообщения, кроме как бот запущен и бот остановлен.
    Про картинки вообще молчу. Хотя импортировал слово в слово. У меня в библиотеке нет к примеру ContentTypeFilters
    Но почему не приходят сообщения , это для меня до сих пор остаётся загадкой .

    • @x-mems
      @x-mems ปีที่แล้ว +1

      dp.startup.register(start_bot)
      dp.shutdown.register(stop_bot)
      dp.message.register(get_start, Command(commands=['start', 'run']))
      dp.message.register(get_photo, F.photo)

    • @asmix7328
      @asmix7328 10 หลายเดือนก่อน

      спасибо)@@x-mems

  • @noname-hy5kr
    @noname-hy5kr 2 ปีที่แล้ว

    from aiogram.filters import ContentTypesFilter - не находит такой, выдаёт ошибку ImportError: cannot import name 'ContentTypesFilter' from 'aiogram.filters'

    • @nztcoder
      @nztcoder  2 ปีที่แล้ว +1

      В последней версии убрали. Теперь можно использовать magicfilter
      F.content_type.in_({'text', 'photo'})
      F.content_type == 'text'

    • @sweezy9804
      @sweezy9804 2 ปีที่แล้ว

      ​@@nztcoder такой способ прокатит с контактом? у меня ошибку выдает TypeError: object bool can't be used in 'await' expression, фильтр делал таким: dp.message.register(func_true_contact,F.content_type.in_({"contact"}) ,IsTrueContact())

    • @sweezy9804
      @sweezy9804 2 ปีที่แล้ว +1

      все я решил проблему, функцию def __class__ надо было async def __class__

    • @sweezy9804
      @sweezy9804 2 ปีที่แล้ว +1

      __call__*

    • @Angel_Metatron
      @Angel_Metatron 2 ปีที่แล้ว

      @@sweezy9804 F.contact

  • @RomanPenzov-ce5ub
    @RomanPenzov-ce5ub 9 หลายเดือนก่อน

    Добрый вечер. В видео сообщается, что код будет под видео, но у меня под видео нет кода, а только описание

  • @RomanPenzov-ce5ub
    @RomanPenzov-ce5ub 9 หลายเดือนก่อน

    Добрый вечер. В видео сообщается, что код будет под видео, но у меня под видео нет кода, а только описание