打开QQ邮箱设置(以QQ为例)
借用smtplib;ssl 协议安全发送 smtplib.SMTP_SSL(host=smtpServer,port=commonPort)
;smtp的sendmail发送邮件;MIMEText的主要作用是用来规范内容类型的,比如是文本,还是图像等。
步骤:
subject = "主题"
content = "内容"
sender = "发送人@163.com"
rec ="可以是单个,可以是多个"
password = "授权码"
smtp = smtplib.SMTP_SSL("smtp.163.com",465)
参数以什么邮箱发送,端口号smtp.login(sender,password)
参数,发送人和授权码smtp.sendmail(sender,rec.split(",\n"),message.as_string())
参数:发送人,接收人,发送邮件,要转换成类似json格式代码实现:
import smtplib
from email.mime.text import MIMEText
## 主题
subject = "主题"
# 发送内容
content = "Good Good study,day day up"
# 发送人
sender = "发送人@163.com"
# 接收人 单个 多个收件人
rec = """[email protected],
[email protected],
[email protected],
[email protected]
"""
password = "授权码"
### MIMEText 参数 发送内容, 内容类型 , 编码
message = MIMEText(content,"plain","utf-8")
message["Subject"] = subject
message["From"] = sender ## 发件人
message["To"] = rec ## 收件人
### 发送邮件
smtp = smtplib.SMTP_SSL("smtp.163.com",465)
## smtp = smtplib.SMTP_SSL("smtp.qq.com",25)
smtp.login(sender,password)
## 参数说明 发件人 收件人需要一个列表 发送邮件 类似一种json的格式
smtp.sendmail(sender,rec.split(",\n"),message.as_string())
smtp.close()
要注意的是QQ邮箱端口号必须要用25
EMAIL_HOST = 'smtp.xxx.com' #邮件服务器地址
EMAIL_PORT = xx #端口号25 or 465
EMAIL_HOST_USER = '[email protected]' #你的邮箱
EMAIL_HOST_PASSWORD = 'xxxx' #授权码
EMAIL_USE_TLS = True #默认,不是True发送不成功
EMAIL_FROM = 'xxxx' # 你的邮箱
from django.core.mail import send_mail
email_title = '邮件标题'
email_body = '邮件内容'
email = '[email protected]' #对方的邮箱
send_status = send_mail(email_title, email_body, EMAIL_FROM, [email])