🍣

flaskがインストールできたか確かめるときにハマったこと

2022/11/05に公開約2,100字

先日GitHubにアップロードしたPythonのプログラムで、ウェブアプリにしたいと思い、Web開発のフレームワークを探していました。
今回は小規模なので、flaskを使ってみることにしました。

今回は、virtualboxにインストールしたUbuntu22.04に、インストールしました。

下記の記事で、作業を進めました。
https://sync-g.co.jp/sjobs/python-flask-biginner/
ですが、下記のコマンドを実行するとエラーになりました。

>>> import Flask
>>> Flask.__version

このようなエラーが、出ました。

>>> import Flask

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

ModuleNotFoundError: No module named 'Flask'

>>> 

またインストールしたときも、警告が表示されました。

  WARNING: The script flask is installed in '/home/***/.local/bin' which is not on PATH.

  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

そのため私は、flaskのインストールができていないと思い、ネット検索しました。
下記の記事を読み、flaskを一旦アンインストールして、入れ直しました。
https://qiita.com/U__ki/items/2fad31bf065d37e17146
こちらも、見つけました。
https://teratail.com/questions/121138

でも、解決できませんでした。
その後も検索して調べていると、実際にアプリを開発するディレクトリの中で、flaskをインストールした方が良いのかなと思いました。

実は、先にインストールしたときに、PATHの警告も出ていました。
そのため、PATHに追加も行いました。
PATHに加えた後に、再起動しました。
それでも、改善されませんでした。

そのため念のため下記のコマンドを実行したら、ちゃんとバージョンの確認ができました。

$ flask --version

Python 3.10.6
Flask 2.2.2
Werkzeug 2.2.2

やはり下記の記事のように、仮想化してアプリ開発するようにして、その時にflaskをインストール流れが良いことが分かりました。
https://camp.trainocate.co.jp/magazine/venv-python/

Flaskがインストールできたかの確認方法

私は、下記の記事を知って、とても助かりました。
https://atmarkit.itmedia.co.jp/ait/articles/1807/24/news024.html
この記事の中にある

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello_world():
  return "Hello, World!"

という最小のアプリを実行することで、動作確認をすることができます。

この画像のように、Flaskを実行できました。
最初に私が見つけたFlaskのインストールできたかの確認方法は、試さない方が良いと思います。
こちらのように、ちゃんとアプリのコードを書いて確かめましょう。

補足

私は、下記の警告が表示されましたがウェブページは、表示できました。

WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.

下記の記事のように、試そうとしました。
でも、今回一応練習のプログラムを起動できているので、そのままにしました。
https://qiita.com/lyrical_magical_girl/items/680bc0a5cd8b8049a09c

VSCODEのデバッグの流れを上記の記事で確認しました。
今回は、上記の記事の通り進めることができましたので、この問題は、そのままにしました。
プログラムの書き方を覚えたときに、今回見つけた記事で対応したいと思います。

Discussion

ログインするとコメントできます