工具|StreamLit构造Web应用

功能 Streamlit 帮助机器学习工程师快速开发用户交互工具,几乎可取代 Flask 在机器学习项目中的地位。
个人感受

  • 确实非常方便,安装python库的streamlit后,可快速入门
  • 和学习前端相比,学习成本非常低
  • 界面比较美观,适合用于demo和内部展示
  • 通过简单的代码,就可以展示丰富的功能;但对于复杂的UI还没试
  • 不需要可见的 b/s 通讯,几乎所有交互都通过操作 streamlit 句柄完成
  • 运行需要基于streamlit框架
基本功能 安装

$ pip install streamlit

运行示例

$ streamlit hello --server.port 8080

我指定了端口,否则其默认运行端口是 8501
在其左侧可以选择几种主要的demo
【工具|StreamLit构造Web应用】
工具|StreamLit构造Web应用
文章图片

运行程序
将其中dataframe的demo写入一个文件test.py,然后运行

$ streamlit run test.py --server.port 8080

最简单的程序段示例:

import streamlit as st import numpy as np import pandas as pddataframe = pd.DataFrame( np.random.randn(10, 20), columns=('col %d' % i for i in range(20)))st.dataframe(dataframe.style.highlight_max(axis=0))

可以看到,操作几乎都基于句柄 st
对 Markdown 文本支持

import streamlit as st text = ''' # title1 ## title2 ### title3 Streamlit is **_really_ cool**. ''' st.markdown(text)

工具|StreamLit构造Web应用
文章图片
看起来也还不错,可以考虑 Obsidian+github+streamlit 建立自己的笔记网站,其优势在于支持强大的图表功能,且使用简单,不需要学习众多前端工具。
云功能(Streamlit Cloud) 部署到服务器:把 stream could 与 github 连接,运行其上的 python 代码或者展示其上笔记。
注册帐号
因为网络问题,建议使用github帐号登录streamlit。
发布应用
  • 打开:https://share.streamlit.io/
  • 点New App按钮
  • 选:Paste GitHub URL
  • 然后将自己github中的代码地址复制到框内
  • 点Deploy后,即可在网页中看到运行后的代码效果
管理应用
在已创建的 app 右测点Setting,在 Who can view this app 中选:This app is visible to anyone with the link,程序即可被所有用户访问。
参考 官网
streamlit开发手册
python︱写markdown一样写网页,代码快速生成web工具:streamlit 重要组件介绍(二)

    推荐阅读