После загрузки я хочу, чтобы система автоматически отправляла администратору уведомление по электронной почте с подробностями файла (например, именем файла, размером и меткой времени).
Я пробовал использовать 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!'
(Для справки я следую примерам из курса Python на сайте ameerpet)
Подробнее здесь: https://stackoverflow.com/questions/797 ... thon-flask