Как обрабатывать загрузку файлов и уведомление по электронной почте с помощью Python Flask?Python

Программы на Python
Anonymous
 Как обрабатывать загрузку файлов и уведомление по электронной почте с помощью Python Flask?

Сообщение Anonymous »

Я создаю небольшое веб-приложение с помощью Python Flask, куда пользователи могут загружать файл (например, изображение или документ).
После загрузки я хочу, чтобы система автоматически отправляла администратору уведомление по электронной почте с подробностями файла (например, именем файла, размером и меткой времени).
Я пробовал использовать flask_mail для отправки электронных писем и werkzeug для обработки файлов, но мой код не отправляет электронное письмо после загрузки файла — только часть загрузки работает.
Вот упрощенная версия моего кода:

Код: Выделить всё

from flask import Flask, request
from flask_mail import Mail, Message
import os

app = Flask(__name__)
app.config['MAIL_SERVER'] = 'smtp.gmail.com'
app.config['MAIL_PORT'] = 587
app.config['MAIL_USE_TLS'] = True
app.config['MAIL_USERNAME'] = 'myemail@gmail.com'
app.config['MAIL_PASSWORD'] = 'mypassword'
mail = Mail(app)

@app.route('/upload', methods=['POST'])
def upload_file():
file = request.files['file']
file.save(os.path.join('uploads', file.filename))
msg = Message('New File Uploaded', sender='myemail@gmail.com', recipients=['admin@example.com'])
msg.body = f'File {file.filename} has been uploaded successfully.'
mail.send(msg)
return 'File uploaded and email sent!'
Может ли кто-нибудь подсказать, чего здесь не хватает? Нужна ли мне фоновая потоковая обработка или асинхронная отправка почты для Flask?
(Для справки я следую примерам из курса Python на сайте ameerpet)

Подробнее здесь: https://stackoverflow.com/questions/797 ... thon-flask

Вернуться в «Python»