Красивые веб-приложения и панели с помощью Python Streamlit

Поділитися
Вставка
  • Опубліковано 2 чер 2024
  • ⭐ Стань "Белым" хакером в SkillFactory: go.skillfactory.ru/CHAJug
    Скидка 45% по промокоду ZPROGER до 31.07.2023
    ⭐ Курс ООП и Приват канал: www.zproger-school.com/?...
    ⭐ Телеграм канал: t.me/+vSjJGIVjs6g2NTAx
    В этом видео рассмотрим способ создания красивых сайтов и информационных веб-панелей на Python с помощью библиотеки Streamlit.
    Streamlit позволяет создавать красивые и современные сайты, которые будут работать намного быстрее аналогичных технологий, вроде PyScript / PyWebIO и т.п. Библиотека предоставляет сотни готовых виджетов, понятную документацию и огромное количество боевых проектов. В данном видео мы научимся создавать такие сайты за считанные минуты.
    📁 Github: github.com/Zproger
    📁 Все плейлисты с уроками: bit.ly/39GaY89
    📁 Связаться со мной: zproger777@gmail.com
    📁 Поддержать канал: github.com/Zproger/donate
    Тайм-коды:
    0:00 - Важные особенности проекта
    1:21 - Когда стоит использовать streamlit?
    1:59 - Чем streamlit отличается от других технологий? ChatGPT + Streamlit
    4:02 - Интеграция SkillFactory
    5:16 - На что способен streamlit? Пример боевых приложений
    8:30 - Где найти фишки для streamlit?
    8:49 - Кэширование, цветовые темы, навигация и многое другое
    9:07 - Как запустить это локально? Разворачиваем streamlit на своем ПК
    9:52 - Что такое компоненты streamlit?
    Kra23qnk8

КОМЕНТАРІ • 113

  • @geowatermap
    @geowatermap 10 місяців тому +42

    Оно конечно хорошо, копаешь и нашел хорошее приложение, но выпуск настолько скомканный и перепутанный, что цена всему выпуску - 1 минута и демка с сайта.. Если уж делать, то сразу развернутые имеющие ценность. А так я узнал, что есть стримлит и что он вроде как быстрее и что нужно почитать документацию. Но и на этом спасибо. Покрутим, будем разбираться где его можно использовать и насколько полезен и быстр.

    • @zproger
      @zproger  10 місяців тому +8

      Ну это скорее как обзор проекта и его фишек, а не как обучающий ролик. Если лайки наберем, то след.выпуск уже будет конкретно с кодом и готовым приложением.

    • @geowatermap
      @geowatermap 10 місяців тому +3

      @@zproger ну и за такое спасибо :) хотя чтение документации конечно дает больше инфы и она более упорядочена. Потом неплохо было бы все ти гуи сравнить вместе с примерами. это бы зашло.

    • @benikt5765
      @benikt5765 10 місяців тому +1

      Манипулятор. Если видео наберёт... Уже за одно только это отвращение.
      Чувак если это зайдёт, не надо уговаривать ставить лайки.
      Но все равно спасибо за обзор!

    • @zproger
      @zproger  10 місяців тому +5

      Причем тут манипулятор, по лайкам я определяю заинтересованность. Если интерес будет, значит я пойму что необходимо делать продолжение, если же лайков нет, значит людей не заинтересовали возможности либы, все максимально просто. Данное видео скорее как обзор возможностей, нежели обучающий урок.

    • @geowatermap
      @geowatermap 10 місяців тому +2

      @@zproger все круто. я тебя прекрасно понимаю! вот только алгоритмы ютуба работают наоборот :) "утром деньги - вечером стулья. вечером деньги - утром стулья" :)

  • @galandec2000
    @galandec2000 10 місяців тому +4

    сходил гугланул, да, это штука для веб приложений а точнее ориентирована на Data Science. вот теперь понятнее нафига она нужна. а то сайты, сайты.. в любом случае спасибо.))

  • @KillerLewis73
    @KillerLewis73 10 місяців тому +8

    Автор, привет! Пилишь отличный контент, всегда очень интересно смотреть про новые появляющиеся инструменты в сфере IT и программирования :) Конкретно меня очень заинтересовало во многих твоих видосах то, как у тебя круто сконфигурирован vim (если я его правильно опознал), но на твоем гитхабе я не смог найти файл с конфигурацией. Было бы очень круто, если бы ты сделал обзор на свой конфиг vim'a, или, хотя бы, выложил файл с конфигом(-ами) на гитхаб. Я сам - начинающий пользователь vim, и ищу отовсюду, как бы его поудобнее настроить. Спасибо!!!

  • @washington6666
    @washington6666 9 місяців тому +1

    Недавно начал изучать FastAPI и написал свое полноценное backend application. На данный момент заверщаю работы по frontend (HTML, CSS, JS). Было бы интересно посмотреть как логичнее всего все развернуть с Python Streamlit.

  • @xmxustin
    @xmxustin 10 місяців тому +1

    И снова спасибо тебе, добрый человек

    • @zproger
      @zproger  10 місяців тому

      Спасибо за поддержку!

  • @fynchi34
    @fynchi34 10 місяців тому +8

    Друг, как насчет проекта клиент-сервер программы с интерфейсом?
    Сделать программу, которая будет связываться с сервером, и в связи с ответом проделывать определенные операции у клиента?

  • @MegaActuary
    @MegaActuary 10 місяців тому

    Привет, Автор! КГАМ (креатив гениален, аффтор молодец) Норм контент на твоем канале, и для новичка и для продвинутых, расширить кругозор. Было бы интересно сравнение Streamlit vs Shiny

  • @Drevov
    @Drevov 9 місяців тому

    на сколько подойдет для юзер части для сайтов где прилично трафика?

  • @yaroshchenko_coder
    @yaroshchenko_coder 10 місяців тому

    Есть ли возможность посмотреть исходный код данной библиотеки? Внести изменение в неё?
    Проект открытый?

  • @openm1ndead
    @openm1ndead 10 місяців тому

    Стримлит очень крутой, как-то давно пробовал, аж снова захотелось покрутить его.

    • @zproger
      @zproger  10 місяців тому

      Да, есть такое)

  • @RUS4HELP
    @RUS4HELP 3 місяці тому

    Ну наконец-то! До этого использовал Flet, но там нужно сделать столько танцев с бубнами, чтобы импортировать приложуху в Андроид или даже простой сайт, что пипец... Надеюсь данный инструмент решает этот вопрос)

  • @leobatmanov5049
    @leobatmanov5049 10 місяців тому +8

    Привет, очень круто рассказываешь, после каждого видео иду тестить, но не мог бы ли ты снять какой-то более подробный гайд по webio, т.к. на русском ещё ни кто толком не объяснял

    • @zproger
      @zproger  10 місяців тому

      Возможно сделаю, спасибо

  • @user-hi4dj9bx8n
    @user-hi4dj9bx8n 10 місяців тому

    А в каком ролике была показана PyWebIO?

  • @icrypter
    @icrypter 9 місяців тому +1

    Давайте делайте приложение на стримлит 😂 будет очень интересно посмотреть

  • @olegafanasiev9959
    @olegafanasiev9959 10 місяців тому

    Как и можно ли Streamli увязать с Django ?

  • @user-dq5yx3cq3f
    @user-dq5yx3cq3f 10 місяців тому +1

    Классно. Пойду учить английский дальше

  • @Belgorod_Jedi
    @Belgorod_Jedi 10 місяців тому

    Ну вообще аналогом стримлита является даш. Если их сравнивать , я бы сказал что даш это типо Джанго, в котором если не все, то многое есть из коробки, а стримлит - фласк, в котором многое подключается модулями.

  • @rokot
    @rokot 10 місяців тому

    Из красивших GUI мне понравился ttkbootstrap

  • @user-rx4dx5vr3z
    @user-rx4dx5vr3z 10 місяців тому +1

    Ждём видос про создание игры ;)

    • @zproger
      @zproger  10 місяців тому

      Окей ;)

  • @dmitrypodsukhin3305
    @dmitrypodsukhin3305 10 місяців тому

    Я мало знаком с веб разработкой, но есть желание на vps буквально сделать страницу с выводом датафрейма (источник таблица в постгрес в около 300к строк) с фильтрами по стглбцам+сортировка. Здесь streamlit поможет или лучше чтонибудь другое?

    • @zproger
      @zproger  10 місяців тому

      Стоит попробовать

    • @santorikun
      @santorikun 10 місяців тому

      Можно попробовать в связке streamlit и streamlit-aggrid для отображение таблиц.
      Но 300к на выдачу многовато - скорее всего стоит начать фильтровать на стороне бд.

    • @ekaterinakorolkoviene5824
      @ekaterinakorolkoviene5824 10 місяців тому

      подойдет. в новых версиях таблицы не хуже чем aggrid

    • @Belgorod_Jedi
      @Belgorod_Jedi 10 місяців тому

      Подойдет. Можно еще в сторону даш посмотреть . Там есть уже хорошо реализованный дата тейбл ос всякими сортировками , фильтрами. Только сделай лейзи пашинацию, иначе туго будет все строки разом тянуть

  • @InfoVideoCenter
    @InfoVideoCenter 10 місяців тому

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

    • @zproger
      @zproger  10 місяців тому

      Говорил об этом в компонентах

    • @ekaterinakorolkoviene5824
      @ekaterinakorolkoviene5824 10 місяців тому

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

  • @Anonim-im6ln
    @Anonim-im6ln 10 місяців тому +3

    Круто, можливості цікаві👍🔥

    • @zproger
      @zproger  10 місяців тому

      Благодарю

  • @user-ts6wk3mu2l
    @user-ts6wk3mu2l 10 місяців тому

    Будет ли разбор NiceGUI?

  • @grayich
    @grayich 10 місяців тому +1

    Из видео не понял главного, для работы Streamlit нужен сервер с поддержкой cgi python?

    • @zproger
      @zproger  10 місяців тому

      Можно запустить как угодно

    • @Belgorod_Jedi
      @Belgorod_Jedi 10 місяців тому

      Под капотом фласк, соотвественно под капотом верузюг. Если деплоить, то соотвественно надо юзать гуникорн или uwsgi

  • @nilanser
    @nilanser 10 місяців тому +1

    Давай на данной библиотеке попробуешь реализовать Мини Мессенджер где можно поговорить с друзьями + GPT чат.

    • @zproger
      @zproger  10 місяців тому

      Спасибо за идею

  • @galandec2000
    @galandec2000 10 місяців тому +1

    нефига не понял, но очень интересно.😁
    наверное было бы лучше сказать для чего оно, что можно на нем делать а что нет, недостатки.а то что там вот такое есть или вот такое, можно и самому посмотреть если оно тебе надо. пишут что для дата разрабов, хоть комментаторам спасибо.)) python в GPU пока больно, для это есть js. но то что прогресс есть, это радует.😁
    мне сайт быстрее написать на flask, django и прилепить нужные либы js к ему чем разбираться в этом всем.😁я так понимаю это вообще не для сайтов типовых а для веб приложений под определенные задачи сделано. просто есть сайт а есть приложение. к сожалению пока не то что не все юзеры это понимают, а даже большинство разрабов не совсем понимают разницы.)))

    • @andynaz7044
      @andynaz7044 10 місяців тому +1

      Похоже, ты и сам тоже не очень-то разбираешься )

    • @Belgorod_Jedi
      @Belgorod_Jedi 10 місяців тому

      Ну да, это для спа, сделать юай для модели, данных например.

  • @DevALine
    @DevALine 10 місяців тому

    🔥

  • @MoneyTracker1337
    @MoneyTracker1337 10 місяців тому +3

    Привет, не до конца понятно как связывать различные фреймы на беке( к примеру django restapi) с такими фронтами как flet, streamlit и тд, было бы круто если ты показал бы на видео)

    • @Belgorod_Jedi
      @Belgorod_Jedi 10 місяців тому

      Стримлит больше заточен на спа у него свой бэк. Не слышал чтобы вязали стримлит с дрф. Разве что по определенному руту вываливать стримлит приложение, и держать его как модуль для джанги. Какую связь ты подразумеваешь между стримлитом и дрф я не понял

    • @Belgorod_Jedi
      @Belgorod_Jedi 10 місяців тому

      А, стримлит это не фронт, это веб фреймворк где можно сотворить хтмл лейаут

    • @user-es8po1iu3g
      @user-es8po1iu3g 4 місяці тому

      Я лично программировал бек и фронт на flet

  • @rubrik25
    @rubrik25 10 місяців тому

    жоск

  • @develper2
    @develper2 10 місяців тому

    Да, streamlit это круто )
    Но что насчёт синхронизации между страницами и где отвечать на запросы (не создавать же новый сервер чисто для api)

    • @zproger
      @zproger  10 місяців тому

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

    • @develper2
      @develper2 10 місяців тому

      @@zproger деплой это другое, я про синхронизацию изменения данных на одной странице что бы было видно и на другой

    • @santorikun
      @santorikun 10 місяців тому

      В стремлит есть session_state

    • @develper2
      @develper2 10 місяців тому

      @@santorikun и зачем я буду выискивать в цикле одинаковые акки (

  • @drakianas779
    @drakianas779 5 місяців тому

    А приложения можно делать ?

  • @MegaActuary
    @MegaActuary 10 місяців тому

    Было бы интересно сравнение Streamlit vs Shiny
    запилишь?

    • @Belgorod_Jedi
      @Belgorod_Jedi 10 місяців тому

      Ну шайни вроде бы на р написан

  • @Factorium12
    @Factorium12 10 місяців тому

    А можна узнать что у тебя за операционка, свиду панель задач необычная

    • @zproger
      @zproger  10 місяців тому

      Arch Linux BSPWM

    • @Factorium12
      @Factorium12 10 місяців тому

      @@zproger спасибо)

  • @mxustin
    @mxustin 10 місяців тому +1

    0:47 как и раньше: с меня два лайка и два коммента с двух аккаунтов

    • @zproger
      @zproger  10 місяців тому

      Благодарю!

  • @olegafanasiev9959
    @olegafanasiev9959 10 місяців тому

    Эта штука работает с БД ?? , скажем - можно ли Streamlit прикрутить к Django проекту ?!

    • @santorikun
      @santorikun 10 місяців тому

      Встроенного функционала работы с бд как в джанго нету.
      В основном люди тянут инфу в датафрейм и уже с ним работают.
      Есть функционал встраивания в другие сайты.

    • @Belgorod_Jedi
      @Belgorod_Jedi 10 місяців тому

      Стримлит это обособленный веб фреймворк и больше используется для спа. Данные показать , сделать интерактивный интерфейс для модели. Наверняка можно его сделать отдельным модулем для Джанги , но хз, такого не видел. А бд можно с помощью субд + орм, алхимия та же самая

  • @ustas4
    @ustas4 10 місяців тому +1

    Пробовал писать на стримлит комбобокс в котором меняется его содержимое при переключении чекбокса. И застрял. Не обновляется веб. Документации море

    • @zproger
      @zproger  10 місяців тому

      Странно, вроде как должно нормально работать

  • @user-hi4dj9bx8n
    @user-hi4dj9bx8n 10 місяців тому

    Можно ли создать браузер на streamlit?

    • @zproger
      @zproger  10 місяців тому

      Вряд ли, разве что если ловить запросы, на бэкенде обрабатывать и возвращать ответ, но это выйдет онлайн-браузер, а не полноценное приложение.

  • @TheMainlord
    @TheMainlord 10 місяців тому +1

    Мне он нравится, но, насколько я понял, сложно его запускать на собственном сервере. Поправь, если ошибаюсь

    • @zproger
      @zproger  10 місяців тому +1

      Вообще не сложно

    • @TheMainlord
      @TheMainlord 10 місяців тому

      @@zproger тогда буду ждать инструкцию как это сделать)

    • @ekaterinakorolkoviene5824
      @ekaterinakorolkoviene5824 10 місяців тому

      через nginx

  • @user-eo4kd9dt1e
    @user-eo4kd9dt1e 10 місяців тому +1

    Я знаком только с flet. Чем streamlit лучше flet?

    • @zproger
      @zproger  10 місяців тому

      Нужно сравнить, чтобы понять это. Но а так это немного разные инструменты.

  • @nowsyyyneiro576
    @nowsyyyneiro576 10 місяців тому

    у кого есть и кому не лень киньте пж уже исходный код с норм интерфейсом. хочу пока что пустую прогу ну ток вписать там допустим мейн сетингс и впринципе чтобы можно было добавлять в проге, довольно удобно было бы. в дальнейшем уже сам дописать хочу функционал

  • @Hero_7380
    @Hero_7380 9 місяців тому

    А можно обзор на рабочий экран тему и на то как ты их кастомизируеш! пжпжпжп я ужн неделю ищу как в браузере убрать кнопки управления

    • @Hero_7380
      @Hero_7380 9 місяців тому

      Если надо могу и задонатить!!! просто капец красота

    • @zproger
      @zproger  9 місяців тому

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

  • @ithelper-it591
    @ithelper-it591 10 місяців тому +1

    Не повезло. Я уже сделал веб прогу на Flask HTML и SCSS. И тут видео выходит про то как сделать всё, что я делал в 100 раз легче!!!😤😭

    • @zproger
      @zproger  10 місяців тому +1

      Эх...

    • @ithelper-it591
      @ithelper-it591 10 місяців тому

      @@zproger Это печально

  • @user-hi4dj9bx8n
    @user-hi4dj9bx8n 10 місяців тому

    Что такое WebRTC?

  • @i1last
    @i1last 10 місяців тому +1

    А ведь уже месяц прошел...))

    • @zproger
      @zproger  10 місяців тому

      С какого момента?

    • @i1last
      @i1last 10 місяців тому

      @@zproger Я про dot файлы системы) Первый ролик с новой системой был месяц назад

    • @zproger
      @zproger  10 місяців тому +1

      Она не готова, не знаю когда найду время чтобы допилить. Дело в том, что если я конфиги скину, то люди получат не ту систему, что у меня на видео, а они получат оболочку где поплыли все символы, все размеры, скрипты и т.д. Не вижу смысла такое заливать куда-то, это совершенно не юзабельно.

  • @dfgref
    @dfgref 7 місяців тому

    Смотрел-смотрел, коменты читал так и понял для чего это. Автор, можешь объяснить как это применять? А то писать все в одну строчку кода это наверно прям оргазм для однострочников, но что с этим всем делать непонятно.

  • @Hardy_21
    @Hardy_21 10 місяців тому +5

    На pywebio нету виджетов говорит он, а какие виджеты из коробки есть в стримлит? дропдаун список или демонстрация картинки? здесь без хтмл даже фон странички выставить не сможешь, не говорю о каком-то еще партиклс-джс...

    Здесь абсолютно для всего надо писать key, лейблить и попрой даже лейблов не хватает и стримлит ноет чтобы ты еще и хелп писал своим методам. Зачем? потому что го_вно.
    И даже не понятна задумка создатей, хотят они чтобы пользователи юзали процесс-стейт или результаты в переменные помещали. спойлер: оба варианта просто задушат гемором.
    "Офигеть тут стрелочки рисовать дают, графики, ыыы."
    (Но ничё что это не из коробки, и тебе все равно надо через плотли это делать не ?)
    Парсеры деплоить не получится, а настройка селениума - тупо лол удачи братан земля пухом.
    использовать стримлит как веб-страница - не получится, тут один домен.
    создавать сайты визитки на этом кале - нафиг надо? на том же фласке будет в сто раз легче чем на этой ху_йне
    которая кста не знаешь в какой момент самоуничтожится и выкинет ошибку "ты забыл добавить сто операторов для операторов для метода, здесь только 99, значит я хз что это, ну значит дублиткат - короче лови ошибку зае_бал!"
    боже, в этом кале хепл и плейсхолдер придают уникальность.
    Плюс, хероку нахер пошла, теперь только на сервера стримлит заливать можно. Где тупо желаю удачи устанавливать драйвера без досупа к терминалу!
    на пх тоже по дефолту залить не варик.
    так, внатуре зачем а главное нах_уя?
    Вьетнамские флешбеки словил, начало бомбить снова.

    • @santorikun
      @santorikun 10 місяців тому

      Лейблы - это тот еще гемор.
      Что-то серьёзное писать не стоит, но мелкий проект по быстрому никидать можно.
      Как мне - так очень не хватает модальных окон.

  • @Andrei_Balkonski
    @Andrei_Balkonski 7 місяців тому

    Как сделать такую же тему, как у тебя в ide?

    • @zproger
      @zproger  7 місяців тому

      Это дефолт PyCharm на линукс

    • @Andrei_Balkonski
      @Andrei_Balkonski 7 місяців тому

      @@zproger понял, спасибо

  • @traxess
    @traxess 10 місяців тому

    а как сделать такую же верхнюю панель?

    • @zproger
      @zproger  10 місяців тому

      Будет видео

  • @adminadminov-go7su
    @adminadminov-go7su 10 місяців тому

    делай

  • @ilgoodman88
    @ilgoodman88 10 місяців тому

    Где пять тысяч лайков

    • @zproger
      @zproger  10 місяців тому

      не знаю ;(

  • @mistergearone9108
    @mistergearone9108 10 місяців тому +2

    Автор обьяснять очень плохо, я бы даже сказал ужасно. Хотелось бы увидеть реальные примеры применения, а не что одна строчка кода делает вот это, а две строчки делают вот это. Хотелось бы вообще понять для чего оно подходит? Только для одностраничника или можно что-то посерьёзнее замутить?

    • @zproger
      @zproger  10 місяців тому

      Это нереально поместить в одном видео, если оно зайдет, то сделаю еще одно видео где с нуля создам приложение. Ну а вообще, в течении видео я на эти вопросы отвечал.

    • @ekaterinakorolkoviene5824
      @ekaterinakorolkoviene5824 10 місяців тому +1

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

  • @vedstudio1
    @vedstudio1 9 місяців тому +2

    Вот так вот
    вот так вот
    (Нихера не конкретное видео)

    • @zproger
      @zproger  9 місяців тому

      Вот так вот

  • @ko-prometheus
    @ko-prometheus 10 місяців тому