#!/usr/bin/env python
# -*- coding: utf-8 -*- from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr
import smtplib
import time _from_addr = "XXX@XXX.com" # 自定义发送邮箱
_password = "XXXXXX" # 发送邮箱登录密码
_to_addr = [_from_addr] # 自定义默认收件人列表
_smtp_server = "smtp.exmail.qq.com" # SMTP服务器,本实例使用企业QQ邮箱 def _format_addr(s):
""" 格式化一个邮件地址
:param s:
:return:
"""
name, addr = parseaddr(s)
return formataddr((Header(name, 'utf-8').encode(),
addr.encode('utf-8') if isinstance(addr, unicode) else addr)) def send_mail(to_list=_to_addr, sub="邮件功能调试默认主题", content="邮件功能调试默认邮件内容"):
""" to_list:收件人列表;sub:主题;content:邮件内容 """
msg = MIMEText(content, _subtype='html', _charset='utf-8') # 创建一个实例,这里设置为html格式邮件
msg['From'] = _format_addr(u'4399PTQA <%s>' % _from_addr)
msg['To'] = _format_addr(",".join(to_list))
msg['Subject'] = Header(sub, 'utf-8').encode() # 设置主题
try:
server = smtplib.SMTP(_smtp_server, 25)
# server.set_debuglevel(1)
server.login(_from_addr, _password)
server.sendmail(_from_addr, to_list, msg.as_string())
server.quit()
return True
except Exception, e:
print(str(e))
return False if __name__ == '__main__':
title = "PTQA测试报告:" + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) # 邮件主题
msg = """<html>
<body>
<h1>Hello</h1>
<p>send by <a href="http://www.cnblogs.com/guanfuchang">Milton</a>...</p>'
</body></html>"""
to_addr = ["guan825@126.com"]
if send_mail(to_list=to_addr, sub=title, content=msg):
print("发送成功")
else:
print("发送失败")

python 邮件发送实例的更多相关文章

  1. .net邮件发送实例 邮件内容为网页模板

    .net邮件发送实例 邮件内容为网页模板 2009-07-03 09:31:01|  分类: .NET|字号 订阅      Encoding encoding = Encoding.GetEncod ...

  2. centos 7 keepalived故障邮件通知实战(附Python邮件发送脚本)

    centos 7 keepalived故障邮件通知实战(附Python邮件发送脚本) #####################     sendmail.py  begin     ######## ...

  3. Python 邮件发送

    python发送各类邮件的主要方法   python中email模块使得处理邮件变得比较简单,今天着重学习了一下发送邮件的具体做法,这里写写自己的的心得,也请高手给些指点.     一.相关模块介绍 ...

  4. Python邮件发送脚本(Linux,Windows)通用

    脚本 #!/usr/bin/python #-*- coding:utf-8 -*- #Python Mail for chenglee #if fileformat=dos, update file ...

  5. python邮件发送脚本

    转自:http://phinecos.cnblogs.com/ #!/usr/bin/python #coding=utf-8 #@author:dengyike #@date:2010-09-28 ...

  6. python邮件发送

    '''qq邮件与其他邮件有所不同,下以我的qq邮件为例(切勿转载):''' import osimport smtplibfrom email.mime.text import MIMEText # ...

  7. Python邮件发送源码

    -- coding:utf-8 -- i = 0 while i < 10: #发送十次 import smtplib from email.mime.text import MIMEText ...

  8. python邮件发送自动化测试报告

    话不多说直接贴代码 # encoding: utf-8import smtplib #发送邮件模块from email.mime.text import MIMEText #邮件内容from emai ...

  9. python邮件发送:普通文本、html、添加附件

    # -*- coding: utf-8 -*- # @Time : 2019/9/19 13:46 # @Author : HuangWenjun # @Email : 350920551@qq.co ...

随机推荐

  1. explorer.exe中发生未处理的win32异常

    explorer.exe中发生未处理的win32异常的错误提示,是windows系统比较常见的错误事件,多数在开机遇到,也有在电脑使用过程中遇到. 了解explorer.exe进程 从百度百科了解到, ...

  2. element-UI中el-select下拉框可搜索时候,filter-method自定义搜索方法

    使用element-UI框架的使用,我们经常使用el-select下拉框,很多时候还需要使用可搜索的下拉框,然后elementUI官网的实例中只是提了一下filter-method可以自定义搜索方法, ...

  3. kotlin写的几个小例子

    Kotlin-AdapterDemo kotlin语言下BaseAdapter,ArrayAdapter,SimpleAdapter,SimpleCursorAdapter四种适配器的示例 工具and ...

  4. DL for objection detection

    在计算机视觉领域,"目标检测"主要解决两个问题:图像上多个目标物在哪里(位置),是什么(类别).围绕这个问题,人们一般把其发展历程分为3个阶段:1. 传统的目标检测方法2. 以R- ...

  5. SVM学习笔记(二)----手写数字识别

    引言 上一篇博客整理了一下SVM分类算法的基本理论问题,它分类的基本思想是利用最大间隔进行分类,处理非线性问题是通过核函数将特征向量映射到高维空间,从而变成线性可分的,但是运算却是在低维空间运行的.考 ...

  6. Android位置权限以及数组寻找索引的坑

    填坑与求解惑来的. 一.Android 危险权限,来自官方文档的坑??? Android开发者都知道,Android 6.0 之前,权限申请只需要在 AndroidManifest.xml 文件中声明 ...

  7. Web层辅助工具类

    Java web开发中经常用到的一些方法: import java.io.BufferedReader; import java.net.InetAddress; import java.net.Un ...

  8. hadoop14---centos 安装activemq

    创建activemq目录 [root@node1 ~]# mkdir -p /usr/local/activemq 狐火下载activemq,从用户/download目录把文件cp到/usr/loca ...

  9. C# int32与int64的区别 附加:字符字节关系

    int32 =int int64 =long 1byte=8bit unicode 占2btye int32 占 1 btye long 占 4 btye

  10. Ubuntu 14.04上架IPSec+L2TP的方法

    最简单的方法是使用脚本一步一步地进行配置.我用的是philplckthun写的脚本,修改了一下获取服务器IP的方法:脚本文件. 在ubuntu下运行: sh setup.sh 配置配置完成后,服务器端 ...