///
Search
📍

09.(211202)Flask 웹 상에서 파일 업로드하기(기본)

파일 구성

/main.py

from flask import Flask, render_template, request from werkzeug.utils import secure_filename app = Flask(__name__) # 업로드 HTML 렌더링 @app.route('/') def render_file(): return render_template('upload.html') # 파일 업로드 처리 @app.route('/fileUpload', methods = ['GET', 'POST']) def upload_file(): if request.method == 'POST': f = request.files['file'] # 저장할 경로 + 파일명 f.save('/home/glory-dl/glory/python_web/211202_OK/uploads/'+secure_filename(f.filename)) return 'uploads 디렉토리 -> 파일 업로드 성공!' if __name__ == "__main__": app.run(host='0.0.0.0', port=55555, debug=True)
Python
복사
주의해야할 점은 파일을 저장하는 경로를 꼭 잘 명시해줘야 한다. (f.save 쪽 라인에 파일 경로를 잘 명시해야함)

/templates/upload.html

<html> <body> <form action = "http://111.111.111.111:55555/fileUpload" method = "POST" enctype = "multipart/form-data"> <input type = "file" name = "file" /> <input type = "submit"/> </form> </body> </html>
HTML
복사
여기서 주의해야할 점은 form action 부분에 http:// 이하 IP 번호를 꼭 고려하여 잘 작성해야하는데 외부에 ip주소가 노출되는 만큼 이 부분은 조심해줘야만 한다.
실행명령어 : python main.py
실행 화면