250x250
반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- airflow subdag
- gather_nd
- flask
- youtube data
- Airflow
- 유튜브 API
- 상관관계
- correlation
- spark udf
- GenericGBQException
- Counterfactual Explanations
- API
- TensorFlow
- XAI
- BigQuery
- subdag
- integrated gradient
- chatGPT
- grad-cam
- requests
- top_k
- login crawling
- 공분산
- hadoop
- UDF
- Retry
- tensorflow text
- session 유지
- API Gateway
- GCP
Archives
- Today
- Total
데이터과학 삼학년
flask 기초 본문
반응형
flask를 이용하여 web을 만들어보자.
기초 1편
hello flask 출력해보기
flask 라이브러리를 다운받고!
1. 기초
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello flask! man'
if __name__ == '__main__':
app.run(host='0.0.0.0',debug=True,port=5001)
app.run(host=''0.0.0.0') 으로 입력하면 해당 서버의 ip로 host가 설정된다. 즉 외부에서도 접근 가능하게 됨
위 파일을 실행시키면
이런 화면이 나오고
저 아래 주소를 따라가면 web 에 Hello flask! man 이라는 문구가 뙇 찍히게 된다.
어렵군..
flask를 활용하여 web을 만들려면 기본적으로 html, css 에 대한 지식은 있어야 함...허허허
2. URI를 활용하여 변수 적용하기
from flask import Flask
app = Flask(__name__)
@app.route('/user/<username>')
def hello_user(username):
return 'hello' + username
@app.route('/')
@app.route('/<int:worldno>/<feature>')
def inputTest(worldno=None, feature=None):
return render_template('base.html', worldno=worldno, feature=feature)
## int로 변수를 받을때는 반드시 <int: 변수명> 으로 입력해줘야함
3. 특정 함수를 호출하여 적용하기
url_for를 이용하여 원하는 함수를 불러오고, 변수를 넣어줄수 있음
from flask import Flask, url_for
app = Flask(__name__)
@app.route("/hello/")
def hello():
return "Hello World"
@app.route("/profile/<username>")
def get_profile(username):
return "profile: " + username
if __name__ == "__main__":
with app.test_request_context():
print(url_for('hello'))
print(url_for('get_profile', username='flash'))
### url_for 함수를 활용하여, 원하는 함수에 argument를 넣어줄 수 있음
4. REST API를 이용하여 data 보여주기
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/json_test')
def hello_json():
data = {'name' : 'Aaron', 'family' : 'Byun'}
return jsonify(data)
@app.route('/server_info')
def server_json():
data = { 'server_name' : '0.0.0.0', 'server_port' : '8080' }
return jsonify(data)
5. POST, GET method
from flask import Flask, redirect, url_for, request
app = Flask(__name__)
@app.route('/success/<name>')
def success(name):
return 'welcome %s' % name
@app.route('/login', methods = ['POST', 'GET'])
def login():
if request.method == 'POST':
user = request.form['myName']
return redirect(url_for('success', name=user))
else:
user = request.args.get('myName')
return redirect(url_for('success', name=user))
if __name__ == '__main__':
app.run(host="0.0.0.0", port=5001)
<!DOCTYPE html>
<html>
<body>
<form action = "http://0.0.0.0:8080/login" method = "get">
<p>Enter Name:</p>
<p><input type = "text" name = "myName" /></p>
<p><input type = "submit" value = "submit" /></p>
</form>
</body>
</html>
인용 : 잔재미코딩 : https://www.fun-coding.org/flask_basic-2.html
728x90
반응형
LIST
'Web' 카테고리의 다른 글
Visualize figure using html form data on same web page (2) | 2020.01.16 |
---|---|
Visualization tool - bokeh (feat.falsk) (0) | 2020.01.15 |
HTTP 응답코드와 메소드 정리 (0) | 2020.01.15 |
pass data(arguments) from html to app.py (feat.flask) (0) | 2020.01.14 |
flask 구구단 만들기 (0) | 2020.01.13 |
Comments