24 сентября 2024 г. 10:32:55,131
ОШИБКА
Не удалось отправить уведомление: (535, b'5.7.8 Имя пользователя и пароль не приняты. Для получения дополнительной информации , перейдите по адресу\n5.7.8 https://support.google.com/mail/?p=BadCredentials af79cd13be357-7acde53d6c8sm73847185a.44 - gsmtp')
Я пробовал включить IMAP и POP, как видел в других потоках переполнения стека:
Включено POP/IMAP
Я также использую сгенерированный пароль приложения.
Вот связанный код:
Код: Выделить всё
# notifier.py
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
import os
from src.utils.logger import main_logger
class Notifier:
def __init__(self, config):
self.config = config
self.smtp_server = config['smtp_server']
self.smtp_port = config['smtp_port']
self.sender_email = config['sender_email']
self.sender_password = os.getenv('EMAIL_PASSWORD')
self.recipient_email = config['recipient_email']
def send_notification(self, subject, message):
try:
msg = MIMEMultipart()
msg['From'] = self.sender_email
msg['To'] = self.recipient_email
msg['Subject'] = subject
msg.attach(MIMEText(message, 'plain'))
with smtplib.SMTP(self.smtp_server, self.smtp_port) as server:
server.starttls()
server.login(self.sender_email, self.sender_password)
server.send_message(msg)
main_logger.info(f"Notification sent: {subject}")
except Exception as e:
main_logger.error(f"Failed to send notification: {str(e)}")
Подробнее здесь: https://stackoverflow.com/questions/790 ... op-enabled