파이썬 Flask 웹서버 구동하기
✍Flask 프레임워크를 통해서 간단하게 웹서버 구동을 해보겠다.
Flask
Flask는 Python으로 작성된 마이크로 웹 프레임워크의 하나로, Werkzeug 툴킷과 Jinja2 템플릿 엔진에 기반을 둔다. Flask는 특별한 도구나 라이브러리가 필요 없기 때문에 마이크로 프레임워크라 부른다.
Micro Framework
마이크로 프레임워크(Micro Framework)에서의 “마이크로”
는 핵심기능만 간결하게 유지하지만, 확장가능한 것을 목적으로 한다. 최소한의 필요한 구성 요소를 제공하기 때문에 시작이 쉽고, 자신이 필요한 도구와 라이브러리를 자유롭게 선택해서 사용할 수 있다.
Flask 가상 환경 설정
폴더를 만든 후 이름이 flask_evn 가상 환경을 만들어 활성화한다.
명령 프롬프트 앞에 추가된 (flask_evn)가 보이면 가상 환경에 있음을 나타낸다.
# 가상환경 만들기
virtualenv flask_evn
# 가상환경 활성화
source flask_evn/bin/activate
가상환경에 flask를 설치한다.
pip freeze를 사용하여 설치된 라이브러리를 조회 할 수 있다.
# flask 설치
(flask_evn) pip install flask
# flask 확인
(flask_evn) flask --version
# 설치된 라이브러리를 조회
(flask_evn) pip freeze
click==7.1.2
Flask==1.1.2
itsdangerous==1.1.0
Jinja2==2.11.2
MarkupSafe==1.1.1
Werkzeug==1.0.1
Flask 애플리케이션 생성
project 폴더를 만들고, app.py
파일을 생성한다.
main을 직접 실행하는 코드로 변경하면 파이썬 명령어로 실행할 수 있다. debug=True라고 명시하면 해당 파일의 코드를 수정할 때마다 Flask가 변경된 것을 인식하고 다시 시작한다.
@app.route('/경로')
를 쓸 때 URL 경로는 반드시 “/” (슬래시)로 시작해야 한다.
# app.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
# 파이썬 명령어로 실행할 수 있음
if __name__ == '__main__':
app.run(host='127.0.0.1', port=5000, debug=True)
Flask 서버 구동
main 을 직접실행하는 코드를 쓰지 않았다면 flask run
명령어로 서버 구동을 한다. 입력 후 http://127.0.0.1:5000/ 로 들어가서 확인한다.
(flask_evn) FLASK_APP=app.py flask run
(flask_evn) flask run
# 파이썬 명령어 사용
(flask_evn) python app.py
템플릿 추가하기
project 폴더 내에 templates
폴더를 추가하고, templates 안에 hello.html 과 register.html을 추가한다.
app.py
에 템플릿 코드 추가한다.
# app.py
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/register')
def register():
return render_template('register.html')
@app.route('/')
def hello_world():
return render_template('hello.html')
if __name__ == '__main__':
app.run(host='127.0.0.1', port=5000, debug=True)
페이지 확인하기
app.py의 router를 통해 http://127.0.0.1:5000/ 과 http://127.0.0.1:5000/register 주소를 확인할 수 있다.
Author And Source
이 문제에 관하여(파이썬 Flask 웹서버 구동하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@poiuyy0420/파이썬-Flask-웹서버-구동하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)