Надсилайте електронні листи в Python

Автоматичні електронні листи широко використовуються для надсилання сповіщень або інших повідомлень передплатникам. Крім того, різні електронні листи ініціюються на основі дій або поведінки користувачів. Щоб реалізувати автоматизацію електронної пошти, у цій статті описано, як надсилати електронні листи через SMTP у Python. Крім того, ми продемонструємо, як створити повідомлення електронної пошти з простим текстом або тілом HTML з нуля.

Бібліотека Python для надсилання електронних листів через SMTP

Щоб створювати та надсилати електронні листи за допомогою SMTP, ми будемо використовувати Aspose.Email for Python через .NET. Це потужна бібліотека Python, яка дозволяє реалізувати багатофункціональні клієнти електронної пошти. Ви можете встановити API з PyPI за допомогою такої команди.

pip install Aspose.Email-for-Python-via-NET

Або ви можете виконати наведені нижче кроки для встановлення вручну.

  • Завантажте файл .whl, який можна встановити, із розділу завантаження.
  • У командному рядку скористайтеся командою: pip install «FileName> >.whl для встановлення API.
  • Завантажте повний пакет зразків вихідного коду з GitHub.

Надсилайте електронні листи через SMTP у Python

Нижче наведено кроки для створення та надсилання електронного листа через SMTP у Python.

  • Створіть об’єкт класу MailMessage.
  • Встановіть тему, текст, адреси відправника та одержувача.
  • Установіть копію або приховану копію (необов’язково).
  • Створіть новий клієнт SMTP за допомогою класу SmtpClient і встановіть хост, порт, ім’я користувача та пароль.
  • Встановіть параметри безпеки.
  • Надсилайте електронну пошту за допомогою методу SmtpClient.send(MailMessage).

У наведеному нижче прикладі коду показано, як створювати та надсилати електронні листи в Python.

# Створити повідомлення електронної пошти
eml = ae.MailMessage()
eml.subject = "Message with Plain Text Body"
eml.body = "This is plain text body."
eml.from_address = "from@gmail.com"
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))

# Створіть клієнт SMTP
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

# Відправити лист
client.send(eml)

Надсилайте електронні листи з текстом HTML у Python

Нижче наведено кроки для надсилання електронних листів із текстом HTML у Python.

  • Створіть об’єкт класу MailMessage.
  • Встановіть текст електронної пошти за допомогою властивості MailMessage.bodyhtml.
  • Установіть для властивості MailMessage.isbodyhtml значення true.
  • Призначте тему, адреси відправника та одержувача.
  • Установіть копію або приховану копію (необов’язково).
  • Створіть новий клієнт SMTP за допомогою класу SmtpClient і встановіть хост, порт, ім’я користувача та пароль.
  • Надсилайте електронну пошту за допомогою методу SmtpClient.send(MailMessage).

У наведеному нижче прикладі коду показано, як надсилати електронні листи з текстом HTML у Python.

# Створіть повідомлення електронної пошти з текстом HTML
eml = ae.MailMessage()
eml.subject = "Message with Plain Text Body"
eml.is_body_html = True
eml.html_body = "<html><body>This is the <b>HTML</b>body</body></html>"
eml.from_address = "from@gmail.com"
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))

# Створіть клієнт SMTP
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

# Відправити лист
client.send(eml)

Код Python для масової розсилки електронних листів

Нижче наведено кроки для масового надсилання електронних листів у Python.

  • Створіть кілька повідомлень електронної пошти за допомогою класу MailMessage і встановіть їхні властивості, наприклад тему, одержувачів тощо.
  • Створіть об’єкт класу MailMessageCollection.
  • Додайте повідомлення електронної пошти до колекції за допомогою методу MailMessageCollection.append(MailMessage).
  • Створіть новий клієнт SMTP за допомогою класу SmtpClient і встановіть хост, порт, ім’я користувача та пароль.
  • Надіслати електронний лист за допомогою методу SmtpClient.send(MailMessageCollection).

У наведеному нижче прикладі коду показано, як масово надсилати електронні листи через SMTP у Python.

# Створення кількох повідомлень електронної пошти
message1 = MailMessage("from@gmail.com", "to@gmail.com", "Sending Bulk Emails using Aspose.Email", "message1, how are you?")
message2 = MailMessage("from@gmail.com", "to@gmail.com", "Sending Bulk Emails using Aspose.Email", "message2, how are you?")
message3 = MailMessage("from@gmail.com", "to@gmail.com", "Sending Bulk Emails using Aspose.Email", "message3, how are you?")

# Додати повідомлення до колекції
manyMsg =  MailMessageCollection()
manyMsg.append(message1)
manyMsg.append(message2)
manyMsg.append(message3)

# Створіть клієнт SMTP
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

# Надсилайте електронні листи
client.send(manyMsg)

Як переслати повідомлення електронної пошти в Python

Нижче наведено кроки для пересилання повідомлення електронної пошти в Python.

  • Завантажте повідомлення електронної пошти в об’єкт за допомогою методу MailMessage.load(String fileName).
  • Встановіть адресу одержувача.
  • Створіть клієнт SMTP за допомогою класу SmtpClient.
  • Переслати повідомлення за допомогою методу SmtpClient.forward().

У наведеному нижче прикладі коду показано, як переслати повідомлення електронної пошти в Python.

# Завантажте повідомлення електронної пошти для пересилання
eml = MailMessage.load("Message.eml")

# Встановити одержувача
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))

# Надіслати за допомогою клієнта Smtp
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
client.forward("Recipient1@domain.com", "Recipient2@domain.com", eml)

Бібліотека Python для надсилання електронних листів – отримайте безкоштовну ліцензію

Ви можете отримати безкоштовну тимчасову ліцензію і надсилати електронні листи через SMTP без обмежень оцінювання.

Бібліотека електронної пошти Aspose для Python – демонстраційна версія

Висновок

У цій статті ви дізналися, як створювати та надсилати електронні листи через SMTP у Python. Крім того, ви бачили, як програмно надсилати масові електронні листи з простим текстом або тілом HTML. Ви можете дізнатися більше про API електронної пошти Python за допомогою документації. Якщо у вас виникнуть будь-які запитання чи запити, не соромтеся повідомити нас через наш форум.

Дивись також