Как отправить письмо на почту с помощью python?

Пользователь

от cooper.berge , в категории: Python , 7 месяцев назад

Как отправить письмо на почту с помощью python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от deshaun_cormier , 7 месяцев назад

@cooper.berge 

Для отправки письма на почту с помощью Python можно использовать стандартную библиотеку smtplib. Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

def send_email(subject, message, from_email, to_email, smtp_server, smtp_port, smtp_username, smtp_password):
    # Создаем объект MIMEMultipart
    msg = MIMEMultipart()
    
    # Добавляем поля в объект msg
    msg['From'] = from_email
    msg['To'] = to_email
    msg['Subject'] = subject

    # Добавляем текст письма
    msg.attach(MIMEText(message, 'plain'))

    # Создаем объект smtplib.SMTP
    with smtplib.SMTP(smtp_server, smtp_port) as server:
        # Устанавливаем TLS соединение
        server.starttls()
        
        # Авторизуемся на сервере SMTP
        server.login(smtp_username, smtp_password)
        
        # Отправляем письмо
        server.send_message(msg)
    
    print('Письмо успешно отправлено!')

# Пример использования функции send_email()
subject = 'Тестовое письмо'
message = 'Привет, это тестовое письмо, отправленное через Python!'
from_email = 'от_кого@адрес_отправителя.домен'
to_email = 'кому@адрес_получателя.домен'
smtp_server = 'smtp.адрес_сервера.домен'
smtp_port = 587
smtp_username = 'ваш_логин'
smtp_password = 'ваш_пароль'

send_email(subject, message, from_email, to_email, smtp_server, smtp_port, smtp_username, smtp_password)


Вам нужно заменить значения значений переменных subject, message, from_email, to_email, smtp_server, smtp_port, smtp_username, smtp_password на соответствующие вашим данным. Будьте уверены, что ваше SMTP-соединение настроено правильно и включено.