Во время работы над побочным проектом на прошлой неделе у меня была возможность покопаться в Python и посмотреть, смогу ли я включить отправку электронной почты в свою программу. Ниже описан пошаговый процесс, который я реализовал.

Общий обзор

  1. Создайте свое тело сообщения в текстовом файле (его можно легко создать в самом коде, я просто предпочел сделать его отдельно)
  2. Настройте SMTP SERVER с вашей учетной записью электронной почты (я использовал gmail, но любой другой должен работать так же хорошо)
  3. Создайте свое СООБЩЕНИЕ со всеми необходимыми компонентами — От, Кому, Тема и Тело сообщения
  4. Через SMTP-СЕРВЕР отправьте свое СООБЩЕНИЕ

Начнем с тела сообщения. Создайте файл с именем «messageBody.txt», включив в него все, что вы хотите сказать в своем сообщении.

Пример:

Hi — 
It's been awhile! How've you been? 
Regards, 

Далее давайте создадим код Python:

Давайте начнем с создания функции, которая позволяет нам читать наш файл ‘messageBody.txt’ и возвращает его как шаблон.

Пришло время настроить SMTP или простой протокол передачи почты — именно по нему будет отправляться наша электронная почта.

Короче говоря, вам нужно создать экземпляр SMTP, для которого требуются 2 параметра — Адрес хоста и Номер порта — соответствующие вашему поставщику услуг электронной почты. В моем примере я буду использовать Gmail, но я также включил список нескольких популярных провайдеров.

После этого нужно вызвать еще 2 функции:

  1. server.starttls() — Запускает сервер
  2. server.login (EMAIL, PASS) — сервер входит в вашу учетную запись электронной почты, где EMAIL и PASS — это переменные, содержащие информацию о вашем адресе электронной почты.

После того, как вы настроили сервер, пришло время получить сообщение, вызвав функцию read(filename) и сохранив его в переменной ‘message’.

Потом…

  1. Создайте объект MIMEMultipart ("msg").
  2. Настройте обязательные поля «От», «Кому» и «Тема».
  3. Прикрепите 'message' к MIMEMultiport как обычный текст (у вас также есть возможность сделать это как 'html', где 'messageBody.txt' отформатирован в HTML )

И, наконец, нажмите «Отправить», вызвав функцию «send_message()» с «msg» в качестве параметра для нашего SMTP-сервера.

Полный код:

Если вам понравилась эта статья, пожалуйста, нажмите на маленькую кнопку хлопка ниже!