Вы хотите автоматизировать отправку электронной почты с помощью Ubuntu и Python? Что ж, вы попали по адресу! В этой статье блога мы рассмотрим различные способы программной отправки электронных писем, используя разговорный язык и предоставив примеры кода, чтобы упростить процесс обучения.
-
Использование библиотеки
smtplib
.
Библиотекаsmtplib
в Python предоставляет простой способ отправки электронной почты с использованием простого протокола передачи почты ( SMTP). Вот простой пример для начала:import smtplib from email.mime.text import MIMEText def send_email(): smtp_server = 'your_smtp_server_address' smtp_port = 587 sender_email = 'your_email@example.com' receiver_email = 'recipient@example.com' subject = 'Hello from Python!' message = 'This is the body of the email.' msg = MIMEText(message) msg['Subject'] = subject msg['From'] = sender_email msg['To'] = receiver_email with smtplib.SMTP(smtp_server, smtp_port) as server: server.starttls() server.login(sender_email, 'your_password') server.send_message(msg) send_email()
-
Использование модулей
os
иsubprocess
.
Другой подход — использование модулейos
иsubprocess
модули для выполнения программ командной строки, которые обрабатывают отправку электронной почты. Например, вы можете использовать утилитуmhsendmail
— инструмент командной строки, доступный в Ubuntu, для отправки электронных писем. Вот как вы можете вызвать его из вашего скрипта Python:import subprocess def send_email(): recipient_email = 'recipient@example.com' subject = 'Hello from Python!' message = 'This is the body of the email.' command = f"echo '{message}' | mhsendmail --subject '{subject}' {recipient_email}" subprocess.run(command, shell=True) send_email()
-
Использование сторонних библиотек.
Если вы предпочитаете более многофункциональное решение, вы можете использовать сторонние библиотеки, такие какyagmail
илиsmtplib
обертки, такие какimbox
. Эти библиотеки предоставляют дополнительные функции, такие как вложения к электронной почте и HTML-контент.Вот пример использования библиотеки
yagmail
:import yagmail def send_email(): sender_email = 'your_email@example.com' receiver_email = 'recipient@example.com' subject = 'Hello from Python!' message = 'This is the body of the email.' yag = yagmail.SMTP(sender_email) yag.send(to=receiver_email, subject=subject, contents=message) send_email()
К этому моменту вы должны хорошо понимать различные методы отправки электронной почты с использованием Python в Ubuntu. Независимо от того, решите ли вы использовать встроенную библиотеку smtplib
, использовать утилиты командной строки, такие как mhsendmail
, или исследовать сторонние библиотеки, возможности безграничны. Приятного кодирования!