收发邮件之应用层协议smtp

smtp

SMTP(简单邮件传输协议)是发送邮件的协议,SMTP是一个相对简单的基于文本的协议。,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。html

安装:pip3 install aiosmtplibpython

import smtplib
from email import encoders
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr

from_addr = ‘’     #发件方邮箱地址
to_addr = ‘’         #收件方
subject = ‘’          #邮箱主题
password = ‘’       #发件方密码


def send_email(from_addr, to_addr, subject, password):
    msg = MIMEText("邮件正文",'html','utf-8')  #邮箱内容
    msg['From'] = u'<%s>' % from_addr
    msg['To'] = u'<%s>' % to_addr
    msg['Subject'] = subject

    smtp = smtplib.SMTP_SSL('smtp.126.com', 465) 
    smtp.set_debuglevel(1)
    smtp.login(from_addr, password)
    smtp.sendmail(from_addr, [to_addr], msg.as_string())
    smtp.quit()

if __name__ == "__main__":
    # 这里的密码是开启smtp服务时输入的客户端登陆受权码,并非邮箱密码
    send_email(from_addr ,to_addr ,subject ,password )

设置发件方邮箱开启邮箱协议(以网易126邮箱为例)ios

首选上协议以后设置一个密码为登陆密码,代码中设置协议服务器地址。服务器