Django发送邮件(附代码)
目录
- 1 什么时候需要发邮件
- 2 SMTP协议
- 3 IMAP协议
- 4 POP3 协议
- 5 邮件发送流程
- 6 django发送邮件
- 7 qq 邮箱
- 8 将错误发送到指定的邮箱
1 什么时候需要发邮件
2 SMTP协议
主要是发邮件
3 IMAP协议
主要是收邮件的协议
可以拉取部分数据
4 POP3 协议
5 邮件发送流程
django需要做的就是发送邮件,当一个邮件客户端
6 django发送邮件
7 qq 邮箱
我们授权我们的qq邮箱给django,在django项目里面,使用qq邮箱进行发送邮件
拉取到最下端
出现以上的界面,那么按照提示,使用你的手机,进行发送对应的东西,手机发送完成之后,点击我已发送
之后就弹出
把授权码记住;
授权码有了,之后就可以在setting.py里面进行配置就可以了;
# 邮件相关配置
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = "smtp.qq.com" # SMTP 服务器地址,格式就是smtp.xxx.com 如果是163邮箱就是smtp.163.com
EMAIL_PORT = 25 # SMTP 服务器默认端口
EMAIL_HOST_USER = "668888@qq.com" # 发送邮件的邮箱,变成你自己的
EMAIL_HOST_PASSWORD = "78888" # 发送短信之后获取的授权码
EMAIL_USE_TLS= False # 是否开启TLS连接(安全链接)
# EMAIL_FROM = "projectsedu@sina.com"
以上就配置好了,接下来写一个工具类,就是专门发送邮件的工具类,之后哪个地方想要发送邮件,直接调用方法发送就可以了;
from random import Random
from django.core.mail import send_mail# 生成随机数def random_str(randomlength=8):str = ''chars = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789'length = len(chars) - 1random = Random()for i in range(randomlength):str+=chars[random.randint(0, length)]return strdef send_register_email(email, send_type="register"):# email_record = EmailVerifyRecord()if send_type == "update_email":code = random_str(4)else:code = random_str(16)# email_record.code = code# email_record.email = email# email_record.send_type = send_type# email_record.save()email_title = ""email_body = ""if send_type == "register":email_title = "在线网注册激活链接"email_body = "请点击下面的链接激活你的账号: http://127.0.0.1:8000/active/{0}".format(code)send_status = send_mail(email_title, email_body, "12144@qq.com", [email])if send_status:passelif send_type == "forget":email_title = "注册密码重置链接"email_body = "请点击下面的链接重置密码: http://127.0.0.1:8000/reset/{0}".format(code)send_status = send_mail(email_title, email_body, "12144@qq.com", [email])if send_status:passelif send_type == "update_email":email_title = "在线邮箱修改验证码"email_body = "你的邮箱验证码为: {0}".format(code)send_status = send_mail(email_title, email_body, "12144@qq.com", [email])if send_status:pass
8 将错误发送到指定的邮箱
Django发送邮件(附代码)相关推荐
- 独家 | 手把手教TensorFlow(附代码)
上一期我们发布了"一文读懂TensorFlow(附代码.学习资料)",带领大家对TensorFlow进行了全面了解,并分享了入门所需的网站.图书.视频等资料,本期文章就来带你一步步 ...
- Django 发送邮件
Django 发送邮件 在settings.py中设置 EMAIL_USE_SSL = True EMAIL_HOST = 'smtp.qq.com' # 如果是 163 改成 smtp.163.c ...
- Django项目实战——8—(判断用户是否登录并返回JSON、Django发送邮件的配置、生成邮箱验证链接、验证邮箱后端逻辑)
1.判断用户是否登录并返回JSON 重要提示: 只有用户登录时才能让其绑定邮箱. 此时前后端交互的数据类型是JSON,所以需要判断用户是否登录并返回JSON给用户. 方案一: 使用Django用户认证 ...
- php 运营商授权,PHP判断手机号运营商(详细介绍附代码)
道理很简单,知道手机号规则 进行正则判断就可以 移动:134.135.136.137.138.139.150.151.157(TD).158.159.187.188 联通:130.131.132.15 ...
- Django - 发送邮件
在Python中已经内置了一个smtp邮件发送模块,Django在此基础上进行了简单地封装,让我们在Django环境中可以更方便更灵活的发送邮件. 所有的功能都在django.core.mail中. ...
- Get了!用Python制作数据预测集成工具 | 附代码
作者 | 李秋键 责编 | 晋兆雨 大数据预测是大数据最核心的应用,是它将传统意义的预测拓展到"现测".大数据预测的优势体现在,它把一个非常困难的预测问题,转化为一个相对简单的描述 ...
- java中自造类是什么意思_Java建造者模式是什么?如何实现?(附代码)
本篇文章给大家带来的内容是关于Java建造者模式是什么?如何实现?(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 建造者模式 一.什么是建筑者模式? 建造者模式(Build ...
- 一文弄懂元学习 (Meta Learing)(附代码实战)《繁凡的深度学习笔记》第 15 章 元学习详解 (上)万字中文综述
<繁凡的深度学习笔记>第 15 章 元学习详解 (上)万字中文综述(DL笔记整理系列) 3043331995@qq.com https://fanfansann.blog.csdn.net ...
- html5自定义属性作用,html5自定义属性:如何获取自定义属性值(附代码)
这篇文章给大家介绍的内容是关于html5自定义属性:如何获取自定义属性值(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 自定义属性: 在HTML5中我们可以自定义属性,其格 ...
- 手把手教你用Keras进行多标签分类(附代码)_数据派THU-CSDN博客 (翻译:程思衍校对:付宇帅)
手把手教你用Keras进行多标签分类(附代码)_数据派THU-CSDN博客 手把手教你用Keras进行多标签分类(附代码)_数据派THU-CSDN博客
最新文章
- Symfony学习笔记
- 路由协议有类和无类的区别
- 一个很简单的H5的转盘抽奖的(主要用的是css3的属性)
- sqserver对比oracle的区别,oracle和sqlserver比较
- 用友U9执行JS代码。
- [SDOI2016]排列计数
- 如何掌握openGauss数据库核心技术?秘诀一:拿捏SQL引擎(3)
- 将Matting结果转化为二分割结果
- ZOJ1457 || HDU1016 素数环
- 服务器设置客户端网页安装,在Windows 7环境下安装并配置web、SSH、E-mail、FTP等服务器...
- Cesium知识点:根据经纬度获取高程
- 《刻意练习》学习总结
- java调用阿里OCR身份识别接口
- 3dsMax2018注册问题
- 在proteus中共阴数码管的驱动与使用
- Swagger注解传参
- 对接百度ORC营业执照识别
- 笔记本修改无线网卡MAC地址
- Java 应用一般架构
- 浅谈Android输入法(IME)架构
热门文章
- 安全测试 switchport protected
- SNAT、DNAT、MASQUERADE的区别
- rtk手簿Android代码,中海达rtk手机测量软件(Hi-Survey Road)
- 【壁纸小程序】搭建自己的壁纸小程序-微信抖音双端
- android usb 摄像头 驱动开发,自制USB摄像头硬件的驱动编写_修改UVC
- 华为充电协议_华为推出超级快充多协议充电器,支持65W USB PD快充输出
- 华为连接wifi显示wifi未连接服务器,华为手机连接WIFI但是无法上网怎么解决
- 计算机游戏专业宣传语,游戏的广告词_游戏推广广告词
- Jupyter处理大量数据导致内存溢出 网页崩溃的解决办法
- system1之:文件和目录管理