さすがにいつまでもWEBアプリケーション開発から逃げていると、完成できるものもしないので、ちょっとずつ勉強していきたいと思います。
まずはその足掛かりとして、Flaskの勉強から。
pythonモジュールとしてimportして起動するとWEBサーバとしての役割も兼ねてくれるという優れもの。
使い方も結構簡単そうなので、インストール→起動までやってみました。
忘れないようにまとめておきます。
環境
$ cat /etc/redhat-release CentOS Linux release 7.7.1908 (Core) $ python3 --version Python 3.6.8
epelでインストールできるpython3を使用。
本当はもっと新しいので検証したほうがいいんだろうけど、それはおいおい。
Flaskのインストール
まずはインストール。
pipで導入できるので楽ですね。
# pip3 install Flask Collecting Flask Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError(': Failed to establish a new connection: [Errno -2] 名前またはサービスが不明です',)': /simple/flask/ Could not find a version that satisfies the requirement Flask (from versions: ) No matching distribution found for Flask
???
っと一瞬考えましたが、proxyが通ってないことに気づき。
ちゃんとpipするときにproxyパスを与えてやったらうまくインストールできました。
# pip3 --proxy=[proxyサーバのIPアドレス:ポート] install Flask Collecting Flask Downloading Installing collected packages: MarkupSafe, Jinja2, Werkzeug, click, itsdangerous, Flask Successfully installed Flask-1.1.1 Jinja2-2.10.3 MarkupSafe-1.1.1 Werkzeug-0.16.0 click-7.0 itsdangerous-1.1.0
OK!
試用
作業ディレクトリの作成
ホームディレクトリ直下で作業するのも何なので、作業用ディレクトリを作成。
# mkdir -p ./python/flask # cd ./python/flask/ # pwd /root/python/flask
Flaskの勉強は以下このディレクトリを使って行います。
検証用プログラムの作成
こちらを参考に、簡単に書いてみました。
# coding:utf-8
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
name = "Hello World"
return name
@app.route('/hello2')
def hello2():
name = "Hello World!!!!!"
return name
if __name__ == "__main__":
app.run(host='0.0.0.0')
Flaskをimportして、それっぽく書いてみました。
/にアクセスされたら’Hello World’を、/hello2にアクセスしたら’Hello World!!!!!’を返すようにしました。
ただのテキストで返すので、HTMLのタグとか何も考慮していません。
んで、host=’0.0.0.0’で任意のIPで待ち受けるようにしている・・・のかな?
正直このあたりよくわかっていません。おいおい勉強します。おいおい。
起動
プログラムを作成したら次に起動。
実行するとWEBサーバが立ち上がり、アクセスできるようになります。
# python3 hello.py Serving Flask app "hello" (lazy loading) Environment: production WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. Debug mode: off Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
ちなみに、終了するときは「Ctrl + C」
アクセスしてみる
http://[FlaskサーバのIPアドレス]:5000/
http://[FlaskサーバのIPアドレス]:5000/hello2
うまく表示できました!
まとめ
- FlaskにてPythonで簡単なWEBアプリケーションを作れる
- WEBサーバも兼ねているのでめっちゃらくちんちん
次はHTMLテンプレートを利用したHTMLタグ埋め込みなどを勉強していきたいと思います。
コメント