web-dev-qa-db-ja.com

Flask ImportError:Flaskという名前のモジュールはありません

私はここでFlaskのチュートリアルに従っています:

http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world

./run.pyを試してみると、次のようになります。

Traceback (most recent call last):
  File "./run.py", line 3, in <module>
    from app import app
  File "/Users/benjaminclayman/Desktop/microblog/app/__init__.py", line 1, in <module>
    from flask import Flask
ImportError: No module named flask

これは次のようになります。

ImportError:flaskという名前のモジュールはありません

しかし、それらの解決策は役に立ちません。参考のために、Idoをクリックしてください。

61
bclayman

作成したvirtualenvを削除してみてください。新しいvirtualenvを作成する

virtualenv flask

それから

cd flask

virtualenvを起動しましょう

source bin/activate

これで、コマンドラインの左側に(flask)と表示されるはずです。フラスコを設置しましょう

pip install flask

それからファイルhello.pyを作成してください。

from flask import Flask
app = Flask(__name__)

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

if __== "__main__":
    app.run()

で実行して

python hello.py

PDATE Flask 1.0.2

新しいフラスコリリースでは、スクリプトからアプリを実行する必要はありません。 hello.pyはこのようになっているはずです。

from flask import Flask
app = Flask(__name__)

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

で実行して

FLASK_APP=hello.py flask run

最新のコマンドを実行するときは、hello.pyがあるフォルダーの中にあることを確認してください。

hello.pyを作成する前のステップはすべてこの場合にも当てはまります

92
Rollback

Python 3用

pip3インストールフラスコ

30
Khalid Bin Huda

私が解決できる唯一の方法は、私のユーザーのpython dirをmyapp.wsgiファイルに追加することでした。例として:

sys.path.append('/home/deployer/anaconda3/lib/python3.5/site-packages')

グローバル環境でパッケージをインストールすれば問題ないはずですが、私はpythonパッケージをユーザーとしてインストールしました。

10
Julian

私はflasggerで同様の問題を抱えていました。

その理由は私がいつも使うからです

Sudo pip install flask

しかし、何らかの理由でそれが必ずしもうまくいくとは限りません。時々、あなたはただしなければならない

pip install flask

もう1つの問題は、時々人々がpip install Flaskcap Fでタイプするということ

誰かが動けなくなった場合に備えて、これをここに投稿してください。それが助けになったかどうか私に知らせてください。

便利なリンク: pip installとSudo pip installの違いは何ですか?

4
aneesh joshi

私はpython2を使っていましたが、これをインストールしました:Sudo apt-get install libapache2-mod-wsgi-py3

代わりに:Sudo apt-get libapache2-mod-wsgiをインストールしてください。

インストールを修正すると、フラスコなしの問題は解決しました。

3
Norman Pilusa

仮想環境をアクティブにしてFlaskをインストールした後、私はapp.pyファイルを作成しました。私はそれを次のように実行します:python -m flask run。これが役立つことを願っています!

2
Bogdan001
  1. /etc/Apache2/sites-available/FlaskApp.confを編集
  2. "WSGIScriptAlias"行の前に次の2行を追加します。

WSGIDaemonProcess FlaskApp python-home=/var/www/FlaskApp/FlaskApp/venv/FlaskAppWSGIProcessGroup FlaskApp

  1. Apacheを再起動します。service Apache2 restart

私はFlaskのチュートリアルにも従っています。そして私は同じ問題に遭遇しました。私はそれを修正するためにこの方法を見つけました。

http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world

2
NingAnMe

私の場合、解決策は私の仮想環境を起動するのと同じくらい簡単でした。

$ venv/scripts/activate

私はまだPythonに馴染みがないことがわかりました:)

2
Abid

私もu virtualenvをお勧めします、これもウル問題を解決するかもしれません。

Sudo apt install python-flask

Productionserverにデプロイしたい場合は上記の解決策を進め、それ以外の場合はvirtualenvを使用してください。

1
yunus

これは私のために働いたものです、

Sudo -H pip install flask

あるいはpip3(python3)の場合:

Sudo -H pip3 install flask

サイドノート

Virtualenvを使用している場合は、インストールされているパッケージを一箇所に一覧表示できるようにpip freeze >> requirements.txtすることをお勧めします。 Sudoコマンドおよび-HフラグSudo-Hフラグの詳細については、 Paul'sanswer をご覧ください。これがお役に立てば幸いです。

1
rawplutonium

マイクロブログのflaskファイルに行き、そしてsource bin/activateで仮想環境をアクティブにし、次にflask/binに行き、flaskをインストールし、残りのパッケージはpip install flaskとします。フラスコがbinディレクトリの中にリストされているのがわかります。 microblogから(またはファイルがある場所から)再度./run.pyを実行してみてください。

1
Miguel

フラスコスクリプトはローカル開発サーバーを起動するのに適していますが、コードを変更するたびに手動で再起動する必要があります。それはそれほどいいことではないし、Flaskはもっとうまくやれる。デバッグサポートを有効にすると、サーバーはコードの変更時に自分自身を再ロードし、問題が発生した場合に役立つデバッガーも提供します。デバッグモードを有効にするには、サーバーを実行する前にFLASK_DEBUG環境変数をエクスポートします。たとえば、ファイルはhello.pyです。

$ export FLASK_APP=hello.py
$ export FLASK_DEBUG=1
$ flask run
0
yasin lachini

それから、あなたのPython対話モードに入ります。

import sys

sys.path

それはあなたの道を印刷するでしょう。ぬれたフラスコがsys.pathにインストールされていることを確認してください。

MacOSの場合、Pythonパスは/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packagesにあります。

しかしpipはデフォルトで/Library/Python/2.7/site-packagesの下にpythonパッケージをインストールします。

だからこそ、MacOSではうまくいきません。

0
Tao W

それはpipをアップグレードした後私のために働きました:

curl https://bootstrap.pypa.io/get-pip.py | python

ここでその答えを見つけました: https://stackoverflow.com/a/49748494/3197202

それから私はただフラスコをインストールすることができます:

pip install flask
0
ivanacorovic

これは私がWindowsで同様のエラーを受けたとき私のために働いたものです。 1. virtualenvをインストールする

pip install virtualenve
  1. Virtualenvを作成する

    virtualenvフラスコ

  2. スクリプトに移動してvirtualenvを有効にします

    起動する

  3. フラスコをインストール

    python -m pip install flask

  4. フラスコが取り付けられているか確認する

    python -m pip list

0
sammy ongaya