我正在尝试使用yandex发送电子邮件,但我的功能不起作用。它只是永远等待,也不会有错误。下面是我的函数:
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!')
发布于 2018-07-01 02:19:40
我想你的问题出在这里:
server = smtplib.SMTP('smtp.yandex.com.tr:465')
你需要使用smtplib.SMTP_SSL,因为SSL
docs的连接是安全的,而且smtplib.SMTP_SSL
有很多参数,第一个是host
,第二个是port
和其他参数,但是你现在只需要这两个,你需要分别给host
和port
,试试这个
def send_emails(title,msg):
server = smtplib.SMTP_SSL('smtp.yandex.com.tr', 465)
...
https://stackoverflow.com/questions/51117357
复制相似问题