django —— 邮件
官方文档 1.11
配置settings.py
# QQ邮箱为例, 其他邮箱对应的SMTP配置可查官方
EMAIL_HOST = "smtp.qq.com"
EMAIL_PORT = 465
EMAIL_HOST_USER = "*********@qq.com"
EMAIL_HOST_PASSWORD = "dzptkzrdxcembieg"
EMAIL_USE_SSL = True
EMAIL_FROM = "no-replay<********@qq.com>"
EMAIL_TO = ["**********@163.com", "**************@163.com"]
send_mail
简易文本邮件
(subject, message, from_email, recipient_list)
from __future__ import absolute_import
import time
import os
import django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "BoYa.settings")
django.setup()
from django.core.mail import send_mail
from users.models import ContactInfo
from BoYa.settings import EMAIL_FROM, EMAIL_TO
def send_tip_email():
u = ContactInfo.objects.order_by("-id").first()
email_title = "有新的信息"
email_body = "UserName: {}, \nEmail: {}, \nPhone: {}, \nWebSite: {}, \n" \
"Message: {}".format(u.name, u.email, u.phone, u.website, u.message,
time.strftime("%Y-%m-%d %H:%M:%S"))
send_status = send_mail(email_title, email_body, EMAIL_FROM, ["zxb2031053@163.com"])
return send_status #发送成功状态码为1
send_mass_mail()
连接一次邮件服务器发送多份不同的邮件
message1 = ('Subject here', 'Here is the message', 'from@example.com', ['first@example.com', 'other@example.com'])
message2 = ('Another Subject', 'Here is another message', 'from@example.com', ['second@test.com'])
send_mass_mail((message1, message2), fail_silently=False)
EmailMultiAlternatives
和 EmailMessage
发送多媒体邮件
# -*- coding: utf-8 -*-
from __future__ import absolute_import
import os
import time
import django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "BoYa.settings")
django.setup()
from django.core.mail import EmailMultiAlternatives, EmailMessage, send_mail
from BoYa.settings import EMAIL_FROM, EMAIL_HOST_USER
subject, from_email, to = 'hello', EMAIL_FROM, 'zxb2031053@163.com'
text_content = 'This is an important message.'
html_content = '<h1>This is a test <a href="https://www.baidu.com">message</a></h1>' \
'<p>This is an <strong>important</strong> message.</p>'
# msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
# msg.attach_alternative(html_content, "text/html")
# msg.send()
msg = EmailMessage(subject, html_content, from_email, [to])
msg.content_subtype = "html" # Main content is now text/html
# msg.attach('email.py', '8888888888877777777777777777777')
msg.attach_file('./email_send.py')
msg.attach_file(r'C:\Users\Belick\Desktop\Stu\BoYa_Project\BoYa\requirements.txt')
msg.send()
发送html模板邮件
from django.template import Context, loader
from users.models import UserProfile
user = UserProfile.objects.all().first()
print user.username
context = {
'username': user.username,
'image_url': user.image,
} # 变量可以在/templates/test.html模板中使用
email_template_name = 'test.html'
t = loader.get_template(email_template_name)
mail_list = ['zxb2031053@163.com',]
msg = EmailMultiAlternatives(subject, t.render(context), from_email, [to])
msg.attach_alternative(t.render(context), "text/html")
msg.send()
django —— 邮件的更多相关文章
- Django 邮件推送 解决附件中文名字乱码
Django邮件功能,详情可看官方文档(https://docs.djangoproject.com/en/1.10/topics/email/). 最近做这个功能时遇到的问题,发送附件,收到后中文名 ...
- django日志,django-crontab,django邮件模块
django 日志 四大块,格式器,过滤器,处理器,日志管理器 LOGGING = { 'version': 1, 'disable_existing_loggers': True, 'formatt ...
- django邮件
1.邮件变量 (django settings.py) ADMINS = [('JOHN','JOHN@example.com'),('zhang','zhang@example.com')] #设置 ...
- 毕业设计——Django邮件发送功能实现及问题记录
django发送邮件:send_mail()&send_mass_mail() 自强学堂 刘江的博客 HTTPS,TLS和SSL django发送邮件及其相关问题 步骤 : 0. 登录作为发送 ...
- Django——邮件发送
在settings中添加关键信息 EMAIL_HOST = 'smtp.qq.com' #不同的邮箱有不同的发件地址(收件地址) EMAIL_PORT = 25 #smtp端口号 EMAIL_HOST ...
- python 项目实战之Django 邮件发送
发送邮件¶ 虽然 Python 借助 smtplib 模块简化了发送邮件的流程,但是 Django 在其基础上提供了更简化的支持.这些封装意在加快邮件发送,方便在开发时测试发送邮件,在不支持 SMTP ...
- Django:邮件功能实现
django-users2和django的邮件功能模块都有相关的实现 ----------------------------------------------------------------- ...
- django邮件发送
需要一个邮箱,设置pop3 设置setting EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = ' ...
- django邮件相关设置
EMAIL_HOST = 'smtp.mxhichina.com' # 阿里云企业邮箱 EMAIL_HOST_PORT = 25 # 邮箱服务器端口 EMAIL_HOST_USER = '****** ...
随机推荐
- JDBC中链接数据库前为什么要用Class.forName(驱动类)加载驱动类?
使用JDBC链接数据库时,为什么要先使用Class.forName(String name)来加载类? 答: 实际上就是为了加载类时,调用静态初始化块中的注册函数. 可以看一下MySql的Driber ...
- js设计模式之发布/订阅模式模式
一.前言 发布订阅模式,基于一个主题/事件通道,希望接收通知的对象(称为subscriber)通过自定义事件订阅主题,被激活事件的对象(称为publisher)通过发布主题事件的方式被通知. 就和用户 ...
- C# 装箱与拆箱转换
一.装箱转换(boxing) 装箱时一种隐式转换,它接受值类型的值,根据这个值在堆上创建一个完整的引用类型类型对象并返回对象引用,简单来说就是将值类型转换为引用类型 任何值类型ValueType都可以 ...
- UIKit 框架之WebView
// // ViewController.m // UIWebView // // Created by City--Online on 15/5/18. // Copyright (c) 2015年 ...
- 记一次Java AES 加解密 对应C# AES加解密 的一波三折
最近在跟三方对接 对方采用AES加解密 作为一个资深neter Ctrl CV 是我最大的优点 所以我义正言辞的问他们要了demo java demo代码: public class EncryptD ...
- AngularJS学习笔记(四)内置指令
说说指令 不得不赞叹,指令是ng最为强大的功能之一,好吧,也可以去掉之一,是最强大的功能.ng内置了许多自定义的指令,这避免了我们自己去造轮子.同时,ng也提供了自定义指令的功能,可以让我们的页面元素 ...
- js 筛选数据
<input type="text" id="filterName"> <div class="scope fr"> ...
- windows中80端口被System占用,PID=4的问题
在windows中如果tomcat需要使用80端口,发现该端口已经被占用,而netstat -ano发现该80端口被一个System的进程占用了,而PID=4.我们可以通过下面的方式找到对应的进程,然 ...
- swagger2的使用
springboot项目里怎么使用swagger2? 1.maven依赖 <dependency> <groupId>io.springfox</groupId> ...
- Java Service Wrapper--来自官网文件
-----------------------------------------------------------------------------Java Service Wrapper Pr ...