Как загрузить файл в Python-Flask

Python Программирование и разработка

Загрузка файлов — типичная задача в веб-приложениях. Позаботиться о загрузке файлов в Flask очень просто, все, что нам нужно, это иметь HTML-форму с шифрованием, установленным на информацию о составных частях/формах, чтобы опубликовать файл в URL-адресе. Сценарий flask на стороне сервера извлекает файл из объекта запроса, используя объект request.files[]. При эффективной загрузке файла он сохраняется в идеальном месте на сервере.

Установите Flask, написав в терминале команду:

pip install flask

Поэтапная реализация

Шаг 1: Должна быть создана новая папка «загрузка файлов». Создайте папки «templates» и «main.py» в этой папке, в которых будут храниться наши HTML-файлы и которые будут служить местом для нашего кода Python.

Шаг 2: Для внешнего интерфейса мы должны сначала разработать HTML-файл, в котором пользователь может выбрать файл и загрузить его, нажав кнопки загрузки. Пользователь нажмет кнопку отправки после выбора файла на своем локальном компьютере, чтобы передать его на сервер.

Index.html

HTML

<html>  
<head>  
    <title>upload the file : GFG</title>  
</head>  
<body>  
    <form action = "/success" method = "post" enctype="multipart/form-data">  
        <input type="file" name="file" />  
        <input type = "submit" value="Upload">  
    </form>  
</body>  
</html>

Шаг 3: Мы должны сделать еще один файл HTML только для подтверждения. Для этого создайте файл в папке шаблонов с именем «Acknowledgement.html». Это сработает только в том случае, если загрузка файла прошла гладко. Здесь пользователь получит подтверждение.

Acknowledgement.html

HTML

<html>
   <head>
      <title>success</title>
   </head>
   <body>
      <p>File uploaded successfully</p>
      <p>File Name: {{name}}</p>
   </body>
</html>

Шаг 4: Теперь внутри main.py напишите следующие коды. Имя целевого файла можно получить с помощью следующего кода, а затем мы сохраним загруженный файл в корневой каталог.

main.py

Python3

from distutils.log import debug
from fileinput import filename
from flask import *
app = Flask(__name__)  
 
@app.route('/')  
def main():  
    return render_template("index.html")  
 
@app.route('/success', methods = ['POST'])  
def success():  
    if request.method == 'POST':  
        f = request.files['file']
        f.save(f.filename)  
        return render_template("Acknowledgement.html", name = f.filename)  
 
if __name__ == '__main__':  
    app.run(debug=True)

Выход:

Запустите следующую команду в своем терминале.

python main.py

Теперь внутри main.py напишите следующие коды

Шаг 5: Теперь, чтобы проверить, правильно ли он работает или нет, перейдите в папку, где находится » main.py «. Проверьте в этой папке, вы найдете там файлы.

правильно ли он работает или нет, перейдите в папку, где

Структура файла

Читайте также:  Как использовать вектор (vecto) в C++
Оцените статью
bestprogrammer.ru
Добавить комментарий