делаю функцию отправки писем на почту

Рейтинг: 0Ответов: 1Опубликовано: 19.03.2023

вот реализация функции:

def send_email(to_address, subject, body):

try:
    smtp_server = 'smtp.gmail.com' 
    smtp_port = 587 
    smtp_username = ''
    smtp_password = ''
    smtp_connection = smtplib.SMTP(smtp_server, smtp_port)
    smtp_connection.starttls()
    smtp_connection.login(smtp_username, smtp_password)
    email_headers = 'From: {}\ To: {}\ Subject: {}'.format(smtp_username, to_address, subject)
    email_message = '{}\ \ {}'.format(email_headers, body)
    smtp_connection.sendmail(smtp_username, to_address, email_message)
    smtp_connection.quit()
    print('Email sent successfully!')

except Exception as error:
    print('Email failed to send. Error message: {}'.format(str(error)))

но при вызове функции получаю ошибку: 534, b'5.7.9 Application-specific password required. Буду очень благодарен за помощь!

Ответы

▲ 0

Ошибку решил тем, что зашел в раздел "пароли приложений", сгенерировал пароль для отдельного устройства и ввёл его в скрипте, вместо пароля от почты.