Python3 Отправка электронной почты с помощью Smtplib [Яндекс] - PullRequest
0 голосов
/ 30 июня 2018

Я пытаюсь отправить электронную почту, используя Яндекс, но моя функция не работает. Он просто ждет вечно, здесь тоже нет ошибок. Вот моя функция:

def send_emails(title,msg):
    server = smtplib.SMTP('smtp.yandex.com.tr:465')
    server.ehlo()
    server.starttls()
    server.login(yandex_mail,yandex_pass)
    message = 'Subject: {}\n\n{}'.format(title,msg)
    server.sendmail(yandex_mail,send_to_email,message)
    server.quit()
    print('E-mails successfully sent!')

send_emails('Test Mail', 'Yes its a test mail!')

1 Ответ

0 голосов
/ 30 июня 2018

Я думаю, что ваша проблема здесь:

server = smtplib.SMTP('smtp.yandex.com.tr:465')

вам нужно использовать smtplib.SMTP_SSL , потому что соединение защищено с SSL документами , также smtplib.SMTP_SSL получает много параметров, первый host, второй port и другие параметры, но теперь вам нужно только это два, вам нужно дать host и port отдельно, попробуйте это

def send_emails(title,msg):
    server = smtplib.SMTP_SSL('smtp.yandex.com.tr', 465)
    ...
...