LogoMark.png

Streamlit のバックアップソース(No.2)

#author("2023-01-12T19:06:56+09:00;2023-01-12T19:02:37+09:00","default:inoue.ko","inoue.ko")
*Streamlit
https://docs.streamlit.io/
~

Streamlit は、Webアプリ開発でも特にデータサイエンス領域で開発する際に利用されるフレームワークです。Pythonのフレームワークには、Django、Flask、Bottle などもありますが、Streamlit は、コードが直観的で分かりやすく開発が簡単、またデプロイ(ファイルをサーバーに配置してシステムとして稼働できるようにする)のためのサービスが整っているなど、効率のよい体験が可能です。
~
~

**概要
***基本情報
-公式サイト
--Documentation:https://docs.streamlit.io/
--Streamlit Cloud:https://streamlit.io/cloud
-API Reference:https://docs.streamlit.io/library/api-reference
--Text elements:https://docs.streamlit.io/library/api-reference/text
--Data display elements:https://docs.streamlit.io/library/api-reference/data
--Input widgets:https://docs.streamlit.io/library/api-reference/widgets
--Media elements:https://docs.streamlit.io/library/api-reference/media
--Chart elements:Layouts and Containers
~

***要件
//-[[GoogleColaboratory]]で開発する場合
//--ノートのはじめで、Streamlit をインストールすれば使えます。
// !pip install streamlit

-ローカルPCで開発
--Python のコードが書けるエディタ([[VisualStudioCode]]推奨)
--Python がインストール済み
--PIP がインストール済み
--Streamlit のインストール
 $ pip install streamlit


-デプロイ(Web公開)のために
--GitHub のアカウント(Pythonのコードとデータ等を置くリポジトリ)
--Streamlit Cloud のアカウント(Githubのアカウントと連携可能)
~
~

**Webアプリの構築
Streamlit を使った開発では、Python のコード順に、ページに要素が埋め込まれていきます。Wikiでお馴染みの__[[Markdown]]__記法も使えます。
~

***開発ディレクトリの準備
-任意の場所に任意の名称のフォルダを作成します
-sample.py などの名前で空のファイルを作ります(ここにコードを書く)
-data ディレクトリを作ります(画像やCSVファイルの置き場として)
~

***サンプルコード
sample.py に以下のコードを書いてみて下さい。
 import streamlit as st
 
 st.title("Sample Application")
 st.write("Streamlit Sample")
 st.markdown("# 大見出し")
 st.markdown("## 中見出し")
~

***ローカルで実行
-ターミナルを開いて、開発ディレクトリに移動します。
> え? という方は、__[[Terminal]]__ をご覧ください。
-以下のコマンドをターミナルから入力します
 $ streamlit run sample.py
-以下のような表示が出て、ローカルホスト(あなたのPC)上でサーバーが動いて、ブラウザで動作確認ができます。
 You can now view your Streamlit app in your browser.
   Local URL: http://localhost:8501
   Network URL: http://XXX.XXX.XXX.XXX:8501
~
~

**公開
GitHub にリポジトリを作ってファイルを置くとともに、Streamlit Cloud から公開する手順を紹介します。

-__[[GitHub]]__に新しいリポジトリを作って、そこに sample.py 他の関連ファイルをまとめてアップします。
--参考:https://github.com/koichi-inoue/StreamlitSample
-以下から、Streamlit Cloudにサインインします。
--https://streamlit.io/cloud
--GitHub 連携がよいかと・・・
#image(StreamlitCloud01.jpg,right,30%)
-登録が完了すると、右のような画面になります。
-管理画面の右上にあるNew appを選択します。
#clear
#image(StreamlitCloud02.jpg,right,30%)
-リポジトリ名、ブランチ名、アプリのファイル名を入力して [ Deploy ]
#clear
-しばらくすると、アプリが公開されます。
--参考:https://koichi-inoue-streamlitsample-sample-a31ty5.streamlit.app/
~
~
~