基于Python的SMTP发送邮件

SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。

python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。

 

发送文本邮件简单实例:

# By Python3.8

import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr

#定义邮件发送/收件地址
mail_sender = '*****@qq.com'
mail_send_password = '********'
mail_reciver = '*****@qq.com'

#定义邮件正文内容
msg_text = 'test'

def send_mail():
    #构造邮件
    msg = MIMEText(msg_text,'plain','utf-8')
    msg['from'] = formataddr(['发件人',mail_sender])
    msg['from'] = formataddr(['收件人',mail_sender])
    msg['subject'] = '主题'

    #发送邮件
    #方法一: 本地安装sendmail,无需登录
    server = smtplib.SMTP('localhost')
    server.sendmail(mail_sender, mail_reciver, msg.as_string())
    server.quit()

    
    #方法二: 使用其他服务商的 SMTP 访问(QQ、网易、Google等),需要登录环节
    server = smtplib.SMTP_SSL('smtp.qq.com',465)
    server.login(mail_sender,mail_send_password)
    server.sendmail(mail_sender,mail_reciver,msg.as_string())
    server.quit()

send_mail()

 

你可能感兴趣的:(Python,python)