streamlit-aggridというライブラリが使ってみたかったので、今使用しているAnaconda環境を捨ててpipで都度都度必要なライブラリをインストールするようにしました。ついでに、pythonとstreamlitのバージョンも最新にして起動したところ起動しない。。。。
今回はその時の事象について、備忘録として残しておこうと思います。
事象が発生した環境
事象が発生した環境は以下の通りです。
import streamlit as st
st.title('テストです')
上記コードを書いてstreamlitを起動させるために、以下のコマンドを実行。
streamlit run main.py
すると以下のエラーが・・・
AttributeError: module 'click' has no attribute 'get_os_args'
どうやらclickモジュールのget_os_argsという関数でエラーとなっているようです。
※clickライブラリは、コマンドラインパーサーとしてコマンドラインの引数を扱うライブラリです
対応方法
clickライブラリのバージョンをダウングレードする。
clickモジュールアンインストールしてバージョン指定してインストールすると治りました。
pip uninstall click
pip install click==8.0.4
インストールされていたclickのバージョンは、 8.1.0なのでダウングレードしました。
この状態で再度起動させると成功!
どうやら、clickモジュールのver8.1.0は、get_os_args関数が削除されているみたいなので動かないようです。githubを覗いてみると同じ事象が載ってました。
最新版をインストールしたときは、こういうこともあるので注意したほうがいいですね!
でもこの事象は最新版のpythonをインストールするたびにエラーになるような気がします。。。。
次のバージョンでは治るのでしょうか?
2022/04/16 追記 streamlitの最新バージョンでは、streamlitのインストール時に最新のclickモジュールをアンインストールして8.04にダウングレードしているみたいです。なのでこの事象が発生するのは、streamlitをインストールした後にpythonのバージョンを新しくしたときにのみ発生する事象だと思います。
コメント