본문으로 바로가기

Python :: Flask

category Programing/Python 2018. 5. 17. 16:47





오늘의 주제


python을 기반으로한 웹 어플리케이션 프레임워크 하면 가장 먼저 떠오르는게 django이다.

그러나 나는 경돌이를 개발할 때 flask를 사용했다




Flask


플라스크 역시 django와 마찬가지로 파이썬을 기반으로 한 웹 어플리케이션 프레임워크이다.





왜 jdango가 아닌 flask를 사용했는가?


내가 만들 것은 간단한 메시지 통신 서버의 프로그램이며, 여러 크롤링 프로그램과 조합하는것이 목적이었다. 이를 달성하기 위해 사용하는 도구는 좀더 가볍고 자유로운 flask가 적합하다고 판단했기 때문이다.





flask 설치


너무 쉽다. 아래와 같이 pip install을 진행하면 된다


1
pip install flask
cs






flask 사용


1
2
3
4
5
6
7
8
9
10
11
12
13
14
from flask import Flask
 
app = Flask(__name__)
 
@app.route('/')
def rootFunc():
    return 'root page'
 
@app.route('/message',methods=['POST'])
def msgFunc():
    return 'message page'
 
if __name__ == '__main__':
    app.run(host='0.0.0.0', port=1102)
cs


flask를 이용한 간단한 소스이다.


app = Flask(__name__)

위는 __name__을 인자로 준 Flask 객체인 app을 만드는 명령이다.


@app.route()

route함수를 통해 접근 주소를 지정해준다. 해당 주소로 접근시 아래의 함수를 실행하게된다. 이게 좋은점이 /message가 확장자가 없음에도 잘 돌아가게 할 수 있다는 점이다. 고냥 편하다 bb 데이터를 주고받는다면 메소드도 위의 코드와 같이 설정할 수 있다.


app.run()

run 함수를 통해 해당 어플리케이션을 실행시킨다. 인자를 주지 않을경우 로컬 서버에서 실행이 되며, host=0.0.0.0 인자를 전달하면 외부에서도 접근이 가능하다. 포트도 port 옵션을 통해 지정해줄 수 있다. 왕꿀!!






이정도만 알아도 간단하게 카카오톡 플러스친구 API를 연동시키는데에 큰 무리는 없다. 더 공부하고 싶다면 다음 사이트가 좋은것 같다

http://flask-docs-kr.readthedocs.io/ko/latest/