Django发送HTML格式的邮件

Python3 - 实现邮件的发送 目录 一、 使用SMTP模块发送邮寄 二、 发送HTML格式右键 三、发送带附件的邮件 四、Django处理邮件的发送 4-1 settings配置 4-2 授权码的获取  4-3 视图函数 4-4 群发邮件(一次发送多份) 4-5 携带附件或发送HTML(需要接收方的支持) 4-6 基于SMTP的各大邮箱公司的 ‘服务器’ 及 ‘端口’ 一、 使用SMTP模块发送邮寄 ... 阅读详情
1. settings.py配置
EMAIL_HOST = 'smtp.qq.com'       # 邮件发送的服务器,开启SMTP服务时候,一般可以查到地址
EMAIL_HOST_USER = '邮箱地址'      # 用于发送邮件的邮箱地址
EMAIL_HOST_PASSWORD = 'password' # SMTP服务的授权密码,不是邮箱的登录密码
EMAIL_USE_TLS = True             # 是否开启安全协议,一般默认开启
EMAIL_PORT = 25					 # SMTP服务器开放端口
2. 普通邮件发送
from django.core.mail import send_mail
from django.conf import settings

 send_mail(subject,                  # 邮件标题
           '邮件内容',                # 邮件内容
           settings.EMAIL_HOST_USER, # 用于发送邮件的用户,默认用上述配置文件的用户
           [email],			         # 接收邮件的用户列表
           fail_silently=False,      # 发送失败是否提示,一般默认False
  )
3. 发送HTML格式邮件
  • 第一种方法
from django.core.mail import send_mail
from django.conf import settings
html_message= '这是一段html代码'
send_mail(subject,                   # 邮件标题
           '这里为空就行',            # 邮件内容
           settings.EMAIL_HOST_USER, # 用于发送邮件的用户,默认用上述配置文件的用户
           [email],			         # 接收邮件的用户列表
           fail_silently=False,      # 发送失败是否提示,一般默认False
           html_message=html_message # 要发送HTML内容
)
  • 第二种方法
from django.core.mail import EmailMessage
from django.conf import settings
msg = EmailMessage(subject,                  # 邮件主题 
				   html_content,             # 邮件内容,直接使用html代码就行
                   settings.EMAIL_HOST_USER, # 用于发送邮件的用户
                   ['example@test.com']      # 接收邮件的用户列表
)
msg.content_subtype = 'html'   # 如果要发送html格式邮件,需要指定一下,如果发送普通邮件,无须这一行代码
msg.send()  
  • 第三种方法

这也不能算得上是第三种方法,只是说用另外一种渲染HTML格式,但是使用这种方法维护极其方便

from django.core.mail import EmailMessage
from django.templates.loader import render_to_string

# 跟渲染模板一样,事先写好html模板,可以将html代码与python代码分离开来,方便维护
data = {'name':'join'}
html_content= render_to_string('example.html', data)

msg = EmailMessage(subject,                  # 邮件主题 
				   html_content,             # 邮件内容,直接使用html代码就行
                   settings.EMAIL_HOST_USER, # 用于发送邮件的用户
                   ['example@test.com']      # 接收邮件的用户列表
)
msg.content_subtype = 'html'   
msg.send()  

大家有问题可以微信交流一下~~
在这里插入图片描述

Django发送html邮件的方法 本文实例讲述了Django发送html邮件的方法。分享给大家供大家参考。具体如下: 在Django中,发送邮件非常的方便,一直没有时间,今天来做一个小小的总结吧。 我们常用的当然是通过send_mail发送邮件: 复制代码 代码如下:send_mail(subject,message,from_email,recipient_list,fail_silently=False,auth_user=None,auth_password=None,connection=None) subject,message,from_email 和recipient_list 这四个参数是必须的。 subjec 立即下载

相关推荐

西门子OMAC PackML V2022在S7-1200/S7-1500中的状态机设计与应用实践

本文详细解析了西门子OMAC PackML V2022在S7-1200/S7-1500中的状态机设计与应用实践。通过实际案例和代码示例,介绍了状态机的基础认知、硬件配置、逻辑开发、调试技巧以及与MES系统集成的高级应用,帮助工程师高效实现设备自动化控制。

weixin_29255731的博客 534

lucky带你玩转重型框架Django

Django是一个开放源代码的Web应用框架,适用于中大型项目网站,由Python写成 自发布以来深受喜爱 目前Django已作为Python web工程师所必会的web框架,所以学好Django不光是技能的提高也是面试必备技能、并且通过本视频的学习在掌握Django框架的同时并提升项目实战经验 Django具有如下优点 有完善的ORM关系映射有强大的路由映射功能有完善的视图模板的实现有健全的后台管理系统有强大的缓存支持强大的celery功能 就由lucky老师带你学习我们的Django吧

别再乱改grub.cfg了!手把手教你用GRUB2自定义多系统启动菜单(含UEFI/BIOS双模式配置)

本文详细介绍了如何安全、高效地使用GRUB2自定义多系统启动菜单,涵盖UEFI/BIOS双模式配置。通过避免直接编辑grub.cfg文件,采用正确的配置方法和命令,帮助用户打造稳定且美观的启动环境,特别适合Linux多系统用户和开发者。

weixin_42553471的博客 590

django2 发送邮件配置,邮件内容使用html模板

在 settings.py 的最后面加上类似这些 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_USE_TLS = False EMAIL_HOST = 'smtp.tuweizhong.com' EMAIL_PORT = 25 EMAIL_HOST_USER = 'mail@tuweizhong....

倚栏丶听雨 的博客 881

Zigbee通信(CC2530终端 + ESP32-C6协调器)

实现了CC2530 zigbee终端与ESP32-C6 zigbee协调器的通信交互。

Ecsply的博客 2567

SpaceMesh Mining 教程

當參與Spacemesh的用戶在完成P盤工作後需要完成兩個部分工作:PoET+PoST,這兩部分均是在不同的規定時間完成,具體可參考後續的時間表。註意!只有PoET和PoST均完成的用戶才可以獲得收益。Spacemesh相關P盤教程:說明:1.Spacemesh每個紀元epoch周期為14天,在8月7日完成PoET的將在8月20日完成PoST,收益將在8月25日後發放(之後用戶收益將每隔14天發放一次) 後續PoET時間為8月7日+N14 **後續PoST時間為8月20日+N。

Yc Chan 的个人博客 1045

Django/Python发送HTML邮件 (包含图片)

Django发送HTML邮件 (包含图片) MIMEImage

sinat_36141399的博客 1970

创意视觉项目实战:用ESP32-S3+OV5640构建智能图像流系统

本文详细介绍了如何使用ESP32-S3开发板与OV5640摄像头模块构建智能图像流系统。从硬件连接到软件配置,涵盖Arduino环境搭建、图像采集优化、WiFi视频流传输及外设集成,为开发者提供完整的实战指南,助力智能家居和机器人视觉项目开发。

tech5的博客 1293

django 发送html邮件,Django发送带有html内容的电子邮件

我尝试用django的“send_mass_email”方法发送大量电子邮件,我已经阅读了文档,但示例只显示纯文本消息。在如何才能使用“send_mass_emal”方法发送HTML消息?我试着像一个普通的电子邮件,但收到的只有html代码。这是我的代码:for row_index in range(12, sheet.nrows):if sheet.cell(rowx=row_index, co...

weixin_29470893的博客 400

Python+OpenCV实战:5分钟搞定机械臂手眼标定(眼在手上模式)

本文详细介绍了使用Python和OpenCV在5分钟内完成机械臂手眼标定(眼在手上模式)的实战教程。通过解析相机坐标系与机械臂基坐标系的转换关系,提供从数据采集到标定矩阵计算的全流程代码实现,帮助开发者快速解决AX=XB问题,提升机械臂视觉引导精度。

weixin_33670786的博客 498

灰度发布、蓝绿部署、双活架构与数据同步/备份/迁移

本文系统介绍了现代互联网系统的核心部署策略与数据管理技术体系。主要内容包括:1)三种服务发布策略(灰度发布、蓝绿发布、滚动发布)的原理、实现方式和适用场景对比;2)高可用架构设计(同城双活、异地双活、异地多活)的技术方案;3)数据同步机制、备份策略与迁移方案的设计要点。文章通过架构图、流程图和配置示例详细展示了各类技术的实施方法,并分析了不同方案的优劣及风险控制措施,为构建高可用、高可靠的分布式系统提供了完整的技术指南。

zane的博客 515

Django发送HTML邮件

Django发送HTML邮件 之前关于使用Django发送邮件已经写过一篇文章,不会在Django中发送邮件的话,可以先看这个传送门 在这个基础上只需要稍加配置就可以有一个比较好看的HTML而不是单调几句话的页面,话不多说,直接上代码 models.py的新生类 class NewStudent(models.Model): DEPARTMENT_CHOICE={ ('3...

随我的博客 3614

Python分布式爬虫深度实战:反爬破解+数据清洗+性能优化全流程

分布式爬虫的核心是“调度中心化+执行分布式”,Scrapy-Redis是最易落地的框架,无需从零写调度逻辑;反爬破解要分级应对:基础反爬靠随机UA/限流,进阶反爬靠代理池,高级反爬靠第三方验证码API;数据清洗的关键是“批量处理+标准化”,避免内存溢出,核心字段去重和异常值过滤是必做步骤;性能优化不是单纯加节点,而是从架构(分片)、代码(批量写入)、服务器(索引/网络)三层协同优化,才能实现效率翻倍。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1200

Django 发送html格式的邮件

Django 发送html格式的邮件 django中默认提供了发送邮件的库mail,通过这个库我们可以很方便的通过django发送一份电子邮件 在setting 中指定邮件服务器的基本信息 Python EMAIL_USE_SSL = True EMAIL_HOST =...

从零开始学习python --zeropython 332

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

django发送带附件、图像、html格式的邮件

1. 效果图: 2. settings.py配置项 # 发送邮件配置项 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' # smpt服务器地址 EMAIL_HOST = 'smtp.163.com' # 端口 EMAIL_PORT = 25 # 发送邮件的邮箱 EMAIL_HOST_USER = 'mayanan_net@163.com' # 在邮箱中设置的客户端授权密码 EMAIL_HOST_PASSWORD = 'XP

weixin_42289273的博客 1543

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Django -- 发送HTML格式的邮件

提前在setting中设置邮箱server from django.core.mai import EmailMessage subject, from_email, to = 'xxx', 'noreplay.com', ['xxx'] html_content = "<p>This is an <font size=3 color='green'>...

weixin_30802273的博客 217

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

python测试开发django-29.发送html格式邮件

前言 上一篇已经通过send_mail()函数发送纯文本的邮件,发送成功了,如果我们想发送一个html格式的邮件,如何实现呢?发送html格式的邮件实际上还是调用send_mail()函数 ,只需多加一个html_message参数 html_message参数 从上一篇的send_mail()函数里面可以看出,里面有个参数html_message默认是为None,部分源码如下 mail ...

weixin_30338497的博客 152

django 发送html邮件,Django发送HTML格式QQ邮件

Django官方文档from django.core.mail import EmailMultiAlternativessubject, from_email, to = 'hello', 'from@example.com', 'to@example.com'text_content = 'This is an important message.'html_content = 'This i...

weixin_42140846的博客 340

Python实现发送邮件-使用SMTP模块发送邮件、发送html格式邮件、发送带附件的邮件、Django发送邮件、一次性发多封邮件、各大邮箱smtp服务器、qq邮箱配置smtp、携带附件或发送html

使用SMTP模块发送邮件、发送html格式邮件、发送带附件的邮件、Django发送邮件、一次性发多封邮件、各大邮箱smtp服务器、qq邮箱配置smtp、携带附件或发送html

linjun的博客 1058

python测试开发django(27)--发送html格式邮件

前言 上一篇已经通过send_mail()函数发送纯文本的邮件,发送成功了,如果我们想发送一个html格式的邮件,如何实现呢? 发送html格式的邮件实际上还是调用send_mail()函数,只需多加一个html_message参数 html_message参数 从上一篇的send_mail()函数里面key看出,里面有个参数html_message默认是为None,部分源码如下 mail ...

weixin_44732155的博客 104

Django使用n内置模块发送HTML格式的邮件

def send(request): # subject = "小伙子很帅" # message = "不禁夸啊" # send_mail(subject,message,"18332191389@163.com",["18332191389@163.com"]) # return HttpResponse("ok") from django.core...

Allen . Liu 354

Django发HTML邮件

Django中发送HTML格式的邮件

唯珺不弃 2581

Django 发送邮件

一般在用户注册成功后,会发送一封电邮给对方注册邮箱。进一步还可能要去用户点击邮件中链接以进行注册确认。

hj1993的博客 1469

python实现发送邮件

一 使用SMTP模块发送邮件 import smtplib from email.mime.text import MIMEText from email.header import Header msg_from = '***@qq.com' # 发送方邮箱 passwd = '****' # 填入发送方邮箱的授权码(填入自己的授权码,相当于邮箱密码) msg_to = ['...

weixin_30856965的博客 243
上一篇: Pandas学习笔记(三) concat的使用
下一篇: Django接收复杂Ajax数据
Vee__
博客等级 码龄10年 0粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值