博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
发送邮件
阅读量:5023 次
发布时间:2019-06-12

本文共 2112 字,大约阅读时间需要 7 分钟。

1.使用django下的send_mail发送邮件

send_mail方法实际上是封装了python内置的stmp模块

在settings里先进行配置

EMAIL_HOST = 'smtp.qq.com'  # 如果是 163 改成 smtp.163.com   以什么邮箱发送EMAIL_PORT = 465    #端口号EMAIL_HOST_USER = '306334678@qq.com'  # 帐号 发送者邮箱账号EMAIL_HOST_PASSWORD = 'odokxrzlfejkcbbh'  # 密码 不是密码, 授权码DEFAULT_FROM_EMAIL = EMAIL_HOST_USER#这样收到的邮件,收件人处就会这样显示#DEFAULT_FROM_EMAIL = 'lqz<'306334678@qq.com>'EMAIL_USE_SSL = True   #使用ssl,qq只支持这种
View Code

然后在py文件直接用就行了,发送邮件是一个耗时的操作,可以新开启线程去发

from BBS import settings            # 会有返回值,邮件发送成功是true            # 拿到文章标题            atricle_name = ret.article.title            # 被当前登录人评论            usre_name = request.user.username            # 这个是一个同步的操作:等邮件发完,才能继续往下走(耗时的操作,应该怎么做?可以开一个线程)            # ret=send_mail('您的%s文章被%s评论了'%(atricle_name,usre_name),'这个人评论了:%s'%(content,),settings.EMAIL_HOST_USER,['616564099@qq.com'] )            from threading import Thread            # 实例化            t1 = Thread(target=send_mail, args=(                '您的%s文章被%s评论了' % (atricle_name, usre_name), '这个人评论了:%s' % (content,), settings.EMAIL_HOST_USER,                ['616564099@qq.com']))            t1.start()
View Code

2.stmp模块

import smtplibfrom email.mime.text import MIMETextfrom email.utils import formataddr# from email.mime.image import MIMEImage# from email.mime.base import MIMEBase# from email.header import Headermsg_from = '***@qq.com'  # 发送方邮箱passwd = '***'  # 填入发送方邮箱的授权码(填入自己的授权码,相当于邮箱密码)msg_to = '***@qq.com,***@qq.com'  # 收件人邮箱,如果是多个,中间用逗号隔开# msg_to = '***@qq.com'  # 收件人邮箱subject = "你发财啦"  # 主题content = "好好学习天天向上"# 生成一个MIMEText对象(还有一些其它参数)# _text_:邮件内容msg = MIMEText(content)# 放入邮件主题msg['Subject'] = subject# 也可以这样传参# msg['Subject'] = Header(subject, 'utf-8')# 放入发件人msg['From'] = msg_from# 放入收件人# msg['To'] = '616564099@qq.com'msg['To'] = msg_to# msg['To'] = '发给你的邮件啊'try:    # 通过ssl方式发送,服务器地址,端口    s = smtplib.SMTP_SSL("smtp.qq.com", 465)    # 登录到邮箱    s.login(msg_from, passwd)    # 发送邮件:发送方,收件方,要发送的消息    s.sendmail(msg_from, msg_to, msg.as_string())    print('成功')except Exception as e:    print(e)finally:    s.quit()
View Code

 

转载于:https://www.cnblogs.com/xufengnian/p/10621508.html

你可能感兴趣的文章
NYOJ-613//HDU-1176-免费馅饼,数字三角形的兄弟~~
查看>>
TFS --- GrantBackup Plan Permissions Error
查看>>
傅里叶级数与积分方程
查看>>
软工作业3:用户体验分析——以“南通大学教务管理系统微信公众号”为例
查看>>
Css:背景色透明,内容不透明之终极方法!兼容所有浏览器
查看>>
我们前端跟后端是怎么合作的
查看>>
mysql存储过程
查看>>
洛谷P2556 [AHOI2002] 黑白图像压缩 [模拟]
查看>>
letecode [136] - Single Number
查看>>
linux下设置固定IP的方法
查看>>
VMware虚拟机下Linux系统的全屏显示
查看>>
net core体系-web应用程序-4asp.net core2.0 项目实战(任务管理系统)-2项目搭建
查看>>
高效的jQuery
查看>>
ubuntu 16.04 (软件应用)-输入法
查看>>
windos7修复引导扇区
查看>>
Leetcode总结之Backtracking
查看>>
Android开发学习之路-图片颜色获取器开发(1)
查看>>
StackExchange.Redis 官方文档(一) Basics
查看>>
nupkg 之破解 nodejs+electron-packager 打包exe的解包
查看>>
Objective-C 使用 C++类
查看>>