Задать вопрос
@anapty-xy

Не отправляются письма через ЯНДЕКС SMTP в Django. Что не так?

настроил smtpp но при попытке отправки разрывает соединение

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.yandex.ru'
EMAIL_PORT = 465
EMAIL_USE_SSL = True

EMAIL_HOST_USER = 'miron-n-nik@yandex.ru'
EMAIL_HOST_PASSWORD = 'fzvioleqdhgyyylx'

DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
SERVER_EMAIL = EMAIL_HOST_USER
EMAIL_ADMIN = EMAIL_HOST_USER


В консоли:

Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "C:\pch_projects\OtradaOnlineShop\.venv\Lib\site-packages\django\core\mail\__init__.py", line 92, in send_mail
    return mail.send()
           ^^^^^^^^^^^
  File "C:\pch_projects\OtradaOnlineShop\.venv\Lib\site-packages\django\core\mail\message.py", line 307, in send
    return self.get_connection(fail_silently).send_messages([self])
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\pch_projects\OtradaOnlineShop\.venv\Lib\site-packages\django\core\mail\backends\smtp.py", line 128, in send_messages
    new_conn_created = self.open()
                       ^^^^^^^^^^^
  File "C:\pch_projects\OtradaOnlineShop\.venv\Lib\site-packages\django\core\mail\backends\smtp.py", line 86, in open
    self.connection = self.connection_class(
                      ^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\miron\AppData\Local\Programs\Python\Python312\Lib\smtplib.py", line 1022, in __init__
    SMTP.__init__(self, host, port, local_hostname, timeout,
  File "C:\Users\miron\AppData\Local\Programs\Python\Python312\Lib\smtplib.py", line 255, in __init__
    (code, msg) = self.connect(host, port)
                  ^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\miron\AppData\Local\Programs\Python\Python312\Lib\smtplib.py", line 341, in connect
    self.sock = self._get_socket(host, port, self.timeout)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\miron\AppData\Local\Programs\Python\Python312\Lib\smtplib.py", line 1028, in _get_socket
    new_socket = super()._get_socket(host, port, timeout)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\miron\AppData\Local\Programs\Python\Python312\Lib\smtplib.py", line 312, in _get_socket
    return socket.create_connection((host, port), timeout,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\miron\AppData\Local\Programs\Python\Python312\Lib\socket.py", line 852, in create_connection
    raise exceptions[0]
  File "C:\Users\miron\AppData\Local\Programs\Python\Python312\Lib\socket.py", line 837, in create_connection
    sock.connect(sa)
TimeoutError: [WinError 10060] Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера
  • Вопрос задан
  • 85 просмотров
Подписаться 1 Простой 4 комментария
Решения вопроса 1
@SunTechnik
1. Для отправки почты используется протокол smtp (а не snmp)
2. Требуется создать и использовать пароль приложения, а не пароль от учетки.

https://yandex.ru/support/yandex-360/customers/mai...

Что, прям реально сейчас свой пароль всему миру сообщили от учетки?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы