LoginSignup
4
1

More than 3 years have passed since last update.

Windows10のPython3上でFlaskのHello World!を動かしてみる(仮想環境)

Last updated at Posted at 2019-09-24

用意するもの

Widows 10 Pro (64-bit)

インストール

Python3.7

Pythonのページからインストーラーをダウンロードし、実行します。
今回、Windows用のPython 3.7.4 (64-bit)をダウンロードしました。
https://www.python.org/ftp/python/3.7.4/python-3.7.4-amd64.exe

"Add Python 3.7 to Path"をチェックし、"Install now"でインストールします。
image.png
インストール完了時に、"Disable path length limit" でファイル名の長さ制限(260文字)を解除できるようですが、今回は、解除せず、そのままにしました。

Virtual Environment(仮想環境)

コマンドプロンプトを開き、pipを使って、virtualenvをインストールします(virtualenv-16.7.5)。

コマンドプロンプト.cmd
pip install virtualenv

image.png

Hello World!

仮想環境の構築と有効化

c:\projects\flaskyという開発用フォルダを作成し、そこに仮想環境(venv)を構築します。

コマンドプロンプト.cmd
c:\>mkdir projects
c:\>cd projects
c:\projects>mkdir flasky
c:\projects>cd flasky
c:\projects\flasky>virtualenv venv

image.png

構築後、仮想環境をactivateコマンド(batファイル)で有効化します。

コマンドプロンプト.cmd
venv\scripts\activate

Flaskのインストール

仮想環境が有効な状態で、Flaskをインストールします。

コマンドプロンプト.cmd
pip install flask

image.png

ソースコードと実行

hello.pyをテキストエディタで作成し、実行します。

hello.py
from flask import Flask
app = Flask(__name__)

@app.route('/')
def index():
    return 'Hello, Flask World!'

if __name__ == '__main__':
    app.run(debug=True)
コマンドプロンプト.cmd
python hello.py

image.png

http://127.0.0.1:5000/ にアクセスすると"Hello World!"が表示されます。
image.png

終了

Ctrl+Cで実行を中断し、deactivateコマンド(batファイル)で仮想環境を無効化します。

コマンドプロンプト.cmd
venv\scripts\deactivate

image.png

仮想環境が無効な状態では、Flaskフレームワークを実行できません。
image.png

Flask-Scriptを使う(コマンドライン・オプション)

Flask-Scriptのインストール

仮想環境内でFlask-Scriptをインストールします。

コマンドプロンプト.cmd
pip install flask-script

image.png

ソースコードのManager化

hello.pyをManager化します。

hello.py
from flask import Flask
app = Flask(__name__)

from flask_script import Manager
manager = Manager(app)

@app.route('/')
def index():
    return 'Hello World!'

if __name__ == '__main__':
    manager.run()

コマンドラインオプションを使った起動

runserverをコマンドライン・オプションに指定して、起動することができます。

コマンドライン.cmd
python hello.py runserver -d

image.png

コマンドライン・オプションの詳細

runserverの詳しい使い方は、helpを参照してください。

コマンドライン.cmd
(venv) C:\projects\flasky>python hello.py runserver --help
usage: hello.py runserver [-?] [-h HOST] [-p PORT] [--threaded]
                          [--processes PROCESSES] [--passthrough-errors] [-d]
                          [-D] [-r] [-R] [--ssl-crt SSL_CRT]
                          [--ssl-key SSL_KEY]

Runs the Flask development server i.e. app.run()

optional arguments:
  -?, --help            show this help message and exit
  -h HOST, --host HOST
  -p PORT, --port PORT
  --threaded
  --processes PROCESSES
  --passthrough-errors
  -d, --debug           enable the Werkzeug debugger (DO NOT use in production
                        code)
  -D, --no-debug        disable the Werkzeug debugger
  -r, --reload          monitor Python files for changes (not 100% safe for
                        production use)
  -R, --no-reload       do not monitor Python files for changes
  --ssl-crt SSL_CRT     Path to ssl certificate
  --ssl-key SSL_KEY     Path to ssl key

(venv) C:\projects\flasky>

おわりに

Windows 10 にPython3.7.4をインストールし、仮想環境内でFlaskを使ってHello World!を動かしてみました。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1