РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
466 of 643 menu

Метод send

Метод send применяется к объекту Mail и отправляет электронное письмо. Первым параметром передаётся тема письма, вторым - текст сообщения, третьим - адрес отправителя, а четвёртым - список адресов получателей. Дополнительные параметры позволяют указать копии, скрытые копии и вложения.

Параметры метода:

subject - тема письма.
message - текст сообщения.
sender - адрес отправителя.
recipients - список адресов получателей.
cc - список адресов для копии.
bcc - список адресов для скрытой копии.
attachments - список вложений.
reply_to - адрес для ответа.

Синтаксис

mail.send(subject, message, sender, recipients, cc=None, bcc=None, attachments=None, reply_to=None)

Пример

Давайте отправим простое письмо одному получателю:

from flask import Flask from flask_mail import Mail, Message app = Flask(__name__) app.config['MAIL_SERVER'] = 'smtp.example.com' app.config['MAIL_PORT'] = 587 app.config['MAIL_USE_TLS'] = True app.config['MAIL_USERNAME'] = 'user@example.com' app.config['MAIL_PASSWORD'] = 'password' mail = Mail(app) @app.route('/') def index(): mail.send( 'Hello', 'This is a test message', 'user@example.com', ['recipient@example.com'] ) return 'sent'

Результат выполнения кода:

sent

Пример

Давайте отправим письмо с копией и скрытой копией:

from flask import Flask from flask_mail import Mail, Message app = Flask(__name__) app.config['MAIL_SERVER'] = 'smtp.example.com' app.config['MAIL_PORT'] = 587 app.config['MAIL_USE_TLS'] = True app.config['MAIL_USERNAME'] = 'user@example.com' app.config['MAIL_PASSWORD'] = 'password' mail = Mail(app) @app.route('/') def index(): mail.send( 'Article', 'Text of the article', 'user@example.com', ['recipient@example.com'], cc=['cc@example.com'], bcc=['bcc@example.com'] ) return 'sent with cc'

Результат выполнения кода:

sent with cc

Пример

Давайте отправим письмо с вложением:

from flask import Flask from flask_mail import Mail, Message app = Flask(__name__) app.config['MAIL_SERVER'] = 'smtp.example.com' app.config['MAIL_PORT'] = 587 app.config['MAIL_USE_TLS'] = True app.config['MAIL_USERNAME'] = 'user@example.com' app.config['MAIL_PASSWORD'] = 'password' mail = Mail(app) @app.route('/') def index(): with app.open_resource('file.txt') as f: mail.send( 'Hello', 'Message with attachment', 'user@example.com', ['recipient@example.com'], attachments=[('file.txt', 'text/plain', f.read())] ) return 'sent with attachment'

Результат выполнения кода:

sent with attachment

Смотрите также

  • класс Mail,
    который управляет отправкой почты
  • метод init_app,
    который инициализирует почту для приложения
  • метод send_message,
    который отправляет объект Message
  • метод send класса Connection,
    который отправляет письмо через соединение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить