Django发HTML邮件
来源:互联网 发布:天天养生观耳朵知长寿 编辑:程序博客网 时间:2024/05/08 23:13
工作中一般不会只发纯文件格式的邮件,所以这一章讲发送HTML格式的邮件
setting.py
在setting.py的末尾加上如下代码:
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' #调用Django模块 一般不变EMAIL_HOST ='smtp.qq.com' #邮件服务器,和你发邮件的邮箱相对应。企业用的话一般需要询问一下,每个企业有自己的邮箱服务器配置EMAIL_PORT = 25 #端口 一般25EMAIL_HOST_USER='247128642@qq.com' #发件箱:<span style="font-family: Arial;">可直接向外发送邮件的私人邮箱 或 </span>帮你向外转发邮件的企业提供的特殊邮箱(企业邮箱)EMAIL_HOST_PASSWORD='123456' #密码
view.py
加在view.py的头部,我们要使用放在view.py同级目录下的MultiEmail.py文件中的SendMultiEmail函数(自己写的)
from MultiEmail import SendMultiEmail
from django.core.mail import EmailMultiAlternatives #导入邮件模块#tolist:收件人;cclist:抄送人;fromemail:发件人#邮件中显示的发件人的邮箱,可以试试以其他人的邮件发哈,不保证成功^^def SendMultiEmail(fromemail,tolist,cclist): try: #邮件里会用到汉字,鉴于Python里的编码特别乱,这里最好设置一下编码。 reload(sys) sys.setdefaultencoding('utf-8') #发送邮件的主体,可以放在函数内,也可以通过参数传过来,看自己需要。 html_body = ''' <h3>Hi!<br>This is a test Email.</h3> <table border="1" style="border-width:1px;border-color: #000;border-style:solid;border-collapse: collapse;"> <tr align="center" style="font-weight:bold;font-family:micorsoft yahei;height:30px;"> <td width="150">第一列</td> <td width="80">第二列</td> <td width="80">第三列</td> </tr></table> ''' #html_body可以通过传入参数赋值,也可以写好各部分后加在一起。 #case = ''' # <table border="1" style="border-width:1px;border-color: #000;border-style:solid;border-collapse: collapse;"> # <tr align="center" style="font-family:micorsoft yahei;height:30px;"> # <td width="150">%s</td> # <td width="80">%s</td> # <td width="80">%s</td># </tr></table>'''%(str1,str2,str3) #html_body = html_body + case text_content = 'Hi!这是一封测试邮件。'#对方不支持多媒体邮件的话显示这里的内容 subject = '测试邮件' #邮件标题 #headers = {"Cc":",".join(cclist)}这一部分起到显示的作用。 #不加的话,邮件是可以发送成功的,但是发送的邮件里不显示抄送的名单,回复的时候不能回复所有,不方便 msg = EmailMultiAlternatives(subject, text_content, from_email, tolist, cclist, headers = {"Cc":",".join(cclist)}) #邮件显示html_body的内容,html编码 msg.attach_alternative(html_body, "text/html") msg.send() return True except Exception, e: return False
Tips:
1.bcc暗送功能一直没有实现。
2.发送多封邮件的话,循环调用就可以了,没测试出有什么bug。
3.‘’‘ ****** ’‘’ 中的内容最好有格式一些,在HTML标签后换行比较好。换行随意的话,邮件里偶尔会出现不可捉摸的乱码。
0 0
- Django发HTML邮件
- Django 如何发邮件?
- Django 如何发邮件?
- 【Django】 发邮件 email
- django发邮件
- Django发邮件
- Python发html邮件
- django学习三--发邮件
- Django发送html邮件
- .net发邮件html模板
- django发中文邮件的编码问题
- 【javaMail】【2.发HTML邮件】java mail 发送HTML邮件
- JavaMail发支持HTML脚本邮件实践
- perl发html+附件的邮件
- php 发邮件 带附件 html
- yii2 发邮件 html 附件 文本等
- 阿里云邮箱发html邮件
- 移动html特殊链接:打电话,发短信,发邮件
- C#的二维码生成和解析 Open Source QRCode Library
- window.onerror 事件学习新收获
- 卖商品还要挣维修钱,亚马逊正式进军售后服务
- nobug
- PHP DES加密解密
- Django发HTML邮件
- c#UTF8编码文件简体、繁体互转
- Android搭建开发环境
- 剑指offer系列源码-最小的K个数
- 第十六周项目一 单步调试看指针的指向
- apt-get install openjdk-7-jdk
- Eclipse 插件Maven在使用 add dependency,找不到包,解决办法
- 为什么要使用base64编码
- 做工程项目常见bug