目录

  • 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发送邮件(附代码)相关推荐

  1. 独家 | 手把手教TensorFlow(附代码)

    上一期我们发布了"一文读懂TensorFlow(附代码.学习资料)",带领大家对TensorFlow进行了全面了解,并分享了入门所需的网站.图书.视频等资料,本期文章就来带你一步步 ...

  2. Django 发送邮件

    Django 发送邮件 在settings.py中设置 EMAIL_USE_SSL = True EMAIL_HOST = 'smtp.qq.com'  # 如果是 163 改成 smtp.163.c ...

  3. Django项目实战——8—(判断用户是否登录并返回JSON、Django发送邮件的配置、生成邮箱验证链接、验证邮箱后端逻辑)

    1.判断用户是否登录并返回JSON 重要提示: 只有用户登录时才能让其绑定邮箱. 此时前后端交互的数据类型是JSON,所以需要判断用户是否登录并返回JSON给用户. 方案一: 使用Django用户认证 ...

  4. php 运营商授权,PHP判断手机号运营商(详细介绍附代码)

    道理很简单,知道手机号规则 进行正则判断就可以 移动:134.135.136.137.138.139.150.151.157(TD).158.159.187.188 联通:130.131.132.15 ...

  5. Django - 发送邮件

    在Python中已经内置了一个smtp邮件发送模块,Django在此基础上进行了简单地封装,让我们在Django环境中可以更方便更灵活的发送邮件. 所有的功能都在django.core.mail中. ...

  6. Get了!用Python制作数据预测集成工具 | 附代码

    作者 | 李秋键 责编 | 晋兆雨 大数据预测是大数据最核心的应用,是它将传统意义的预测拓展到"现测".大数据预测的优势体现在,它把一个非常困难的预测问题,转化为一个相对简单的描述 ...

  7. java中自造类是什么意思_Java建造者模式是什么?如何实现?(附代码)

    本篇文章给大家带来的内容是关于Java建造者模式是什么?如何实现?(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 建造者模式 一.什么是建筑者模式? 建造者模式(Build ...

  8. 一文弄懂元学习 (Meta Learing)(附代码实战)《繁凡的深度学习笔记》第 15 章 元学习详解 (上)万字中文综述

    <繁凡的深度学习笔记>第 15 章 元学习详解 (上)万字中文综述(DL笔记整理系列) 3043331995@qq.com https://fanfansann.blog.csdn.net ...

  9. html5自定义属性作用,html5自定义属性:如何获取自定义属性值(附代码)

    这篇文章给大家介绍的内容是关于html5自定义属性:如何获取自定义属性值(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 自定义属性: 在HTML5中我们可以自定义属性,其格 ...

  10. 手把手教你用Keras进行多标签分类(附代码)_数据派THU-CSDN博客 (翻译:程思衍校对:付宇帅)

    手把手教你用Keras进行多标签分类(附代码)_数据派THU-CSDN博客 手把手教你用Keras进行多标签分类(附代码)_数据派THU-CSDN博客

最新文章

  1. Symfony学习笔记
  2. 路由协议有类和无类的区别
  3. 一个很简单的H5的转盘抽奖的(主要用的是css3的属性)
  4. sqserver对比oracle的区别,oracle和sqlserver比较
  5. 用友U9执行JS代码。
  6. [SDOI2016]排列计数
  7. 如何掌握openGauss数据库核心技术?秘诀一:拿捏SQL引擎(3)
  8. 将Matting结果转化为二分割结果
  9. ZOJ1457 || HDU1016 素数环
  10. 服务器设置客户端网页安装,在Windows 7环境下安装并配置web、SSH、E-mail、FTP等服务器...
  11. Cesium知识点:根据经纬度获取高程
  12. 《刻意练习》学习总结
  13. java调用阿里OCR身份识别接口
  14. 3dsMax2018注册问题
  15. 在proteus中共阴数码管的驱动与使用
  16. Swagger注解传参
  17. 对接百度ORC营业执照识别
  18. 笔记本修改无线网卡MAC地址
  19. Java 应用一般架构
  20. 浅谈Android输入法(IME)架构

热门文章

  1. 安全测试 switchport protected
  2. SNAT、DNAT、MASQUERADE的区别
  3. rtk手簿Android代码,中海达rtk手机测量软件(Hi-Survey Road)
  4. 【壁纸小程序】搭建自己的壁纸小程序-微信抖音双端
  5. android usb 摄像头 驱动开发,自制USB摄像头硬件的驱动编写_修改UVC
  6. 华为充电协议_华为推出超级快充多协议充电器,支持65W USB PD快充输出
  7. 华为连接wifi显示wifi未连接服务器,华为手机连接WIFI但是无法上网怎么解决
  8. 计算机游戏专业宣传语,游戏的广告词_游戏推广广告词
  9. Jupyter处理大量数据导致内存溢出 网页崩溃的解决办法
  10. system1之:文件和目录管理