__JMY__
MY Devblog
__JMY__
전체 방문자
오늘
어제
  • 분류 전체보기 (52)
    • Dev (52)
      • Algorithm (6)
      • Linux (12)
      • Network (7)
      • Container (2)
      • Python (14)
      • Frontend (2)
      • Etc (9)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • SCP
  • hash
  • Docker
  • Kubernetes
  • wget
  • network
  • flask
  • frontend
  • algorithm
  • tcpdump
  • Tuple
  • Python
  • springboot
  • Ingress
  • certificate
  • Linux
  • react
  • Sorting
  • flexbox
  • hikaricp

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
__JMY__

MY Devblog

Dev/Python

[python] flask 파일 업로드

2020. 3. 3. 20:39

flask 파일 업로드

flask를 이용하여 서버에 파일을 업로드 하는 방법입니다.

upload_main()은 파일 업로드를 위한 html를 렌더링합니다.

upload_files()은 서버에 파일을 업로드하는 역할을 합니다.

사용자가 서버의 파일시스템이 있는 파일을 수정하는 것을 방지하기 위해 secure_filename()를 사용합니다.

import os
from flask import Flask, request
from werkzeug.utils import secure_filename

UPLOAD_DIR = "D:/"

app = Flask(__name__)
app.config['UPLOAD_DIR'] = UPLOAD_DIR

@app.route('/')
def upload_main():
    return """
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>File Upload</title>
    </head>
    <body>
        <form action="http://localhost:5000/file-upload" method="POST" enctype="multipart/form-data">
            <input type="file" name="file">
            <input type="submit">
        </form>
    </body>
    </html>"""

@app.route('/file-upload', methods=['GET', 'POST'])
def upload_files():
    if request.method == 'POST':
        f = request.files['file']
        fname = secure_filename(f.filename)
        path = os.path.join(app.config['UPLOAD_DIR'], fname)
        f.save(path)
        return 'File upload complete (%s)' % path

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000, debug=True)
반응형

'Dev > Python' 카테고리의 다른 글

[python] REST API 호출  (0) 2020.03.30
[python] Shell 명령어 실행법  (0) 2020.03.30
[python] scp를 이용한 파일전송  (1) 2019.11.27
[python] file의 md5 checksum 구하는 방법  (0) 2019.08.13
[python] wget 사용하는 방법  (0) 2019.08.12
    'Dev/Python' 카테고리의 다른 글
    • [python] REST API 호출
    • [python] Shell 명령어 실행법
    • [python] scp를 이용한 파일전송
    • [python] file의 md5 checksum 구하는 방법
    __JMY__
    __JMY__
    공부내용 정리 블로그

    티스토리툴바