python学习笔记(SMTP邮件发送:带附件)
博主有段时间没有更新博客了
先整理一个之前整理过的SMTP邮件发送,这次是带附件的功能
#!/usr/bin/env python
# -*- coding: utf_8 -*- from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email.utils import parseaddr, formataddr
import smtplib def _format_address(text):
name, address = parseaddr(text)
return formataddr((Header(name, "utf-8").encode(), address)) def unittest_smtp():
from_address = "xx@xx.com"
# 发件箱地址
password = "xxx"
# 授权密码 不是邮箱登录密码
to_address = "xx@xx.com"
# to_address = "xx@xx.com"
# 收件箱地址
smtp_server = "smtp.ym.163.com"
# 发件箱服务器地址
message = MIMEMultipart()
# msg = MIMEText("测试smtp邮件发送功能", "plain", "utf-8")
# 第一个参数:邮件正文
# 第二个参数:邮件类型 纯文本
# 第三个参数:编码 message["From"] = _format_address("自动化测试报告 <%s>" % from_address)
# 发件人姓名与地址
message["To"] = _format_address("xx <%s>" % to_address)
# 收件人姓名与地址
message["Subject"] = Header("xx自动化测试平台邮箱服务", "utf-8").encode()
# 邮件标题
message.attach(MIMEText("测试smtp邮件发送功能", "plain", "utf-8")) att1 = MIMEText(open("D:\\pythonproject\\Wito_erp\\wito_selenium\\20161024113212.html", "rb").read(), "base64", "utf-8")
# 文件地址
att1["Content-Type"] = "application/octet-stream"
att1["Content-Disposition"] = 'attachment; filename="20161024113212.html"'
# 定义附件名称 message.attach(att1)
# 添加附件
try:
server = smtplib.SMTP(smtp_server, 25)
# 构造smtp服务器连接
server.set_debuglevel(1)
# 打开debug输出模式
server.login(from_address, password)
# 登录smtp服务器
server.sendmail(from_address, to_address, message.as_string())
# 发送邮件 print "邮件发送成功"
server.quit()
except smtplib.SMTPException:
print "Error: 无法发送邮件"
python学习笔记(SMTP邮件发送:带附件)的更多相关文章
- java mail邮件发送(带附件) 支持SSL
java mail邮件发送(带附件)有三个类 MailSenderInfo.java package mail; import java.util.Properties; import java.ut ...
- 利用Python+163邮箱授权码发送带附件的邮件
背景 前段时间写了个自动爬虫的脚本,定时在阿里云服务器上执行,会从某个网站上爬取链接保存到txt文本中,但是脚本不够完善,我需要爬虫完毕之后通过邮件把附件给我发送过来,之前写过一个<利用Pyth ...
- Spring的javaMail邮件发送(带附件)
项目中经常用到邮件功能,在这里简单的做一下笔记,方便日后温习. 首先需要在配置文件jdbc.properties添加: #------------ Mail ------------ mail.smt ...
- javax.mail用smtp服务器发送带附件的邮件
jar包: javax.mail-1.5.5.jar maven配置: <dependency> <groupId>com.sun.mail</groupId> & ...
- Python学习笔记——发邮件
参考:Python3实现163邮箱SMTP发送邮件 1.首先需要注册一个网易的邮箱,开启smtp服务,并使用其授权码 2.发送邮件的Python脚本 #!/usr/bin/python # -*- c ...
- python学习笔记--smtp模块的使用及常见错误处理
SMTPAuthenticationError: (535, 'Error: \xc7\xeb\xca\xb9\xd3\xc3\xca\xda\xc8\xa8\xc2\xeb\xb5\xc7\xc2\ ...
- python SMTP邮件发送(转载)
Python SMTP发送邮件 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. py ...
- 吴裕雄--天生自然python学习笔记:Python3 SMTP发送邮件
SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. python的smtplib提供了一 ...
- python学习(21) smtp发送邮件
原文链接: https://www.jianshu.com/p/369ec15bfe22 本文介绍python发送邮件模块smtplib以及相关MIME模块.smtplib用于生成邮件发送的代理,发送 ...
随机推荐
- Python基础教程【读书笔记】 - 2016/7/4
希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第二波:第7章 更加抽象 [总览] 创建自己的对象,是Python的核心概念!Python被称为面向对象的语言.介绍如 ...
- 剑指offer系列42---二叉树深度
[题目]输入一棵二叉树,求该树的深度. * 从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度. package com.exe9.offer; /** * [题 ...
- lwip:网络数据包读取和解析过程
1. 程序的某处(poll or interrupt)在有数据可读时调用ethernetif_input,该函数依次调用以下函数: 1.1 low_level_input(),将网络数据读入内存: 1 ...
- Maven 和 Ant 的区别?
Maven 和 Ant 有什么不同呢?在回答这个问题以前,首先要强调一点:Maven 和 Ant 针对构建问题的两个不同方面.Ant 为 Java 技术开发项目提供跨平台构建任务.Maven 本身描述 ...
- 51nod 1211 数独
数独游戏规则如下:在9 * 9的盘面上有些已知的数字及未知的数字,推理出所有未知的数字,并满足每一行.每一列.每一个粗线宫内的数字均含1-9,不重复. 有些局面存在多个解或无解,这属于不标 ...
- sql语句延时执行或者是指定时间执行
--使用waitfor语句延迟或暂停程序的执行 --waitfor{delay'time'|time 'time'} delay是指间隔时间 最长到24小时 time是指定时间执行 waitfor d ...
- JavaScript中Eval()函数的使用
Eval()常用的几种形式 1.我们预先不知道要执行什么语句,只有当条件和参数给时才知道执行什么语句,这时候eval就派上用场了. function output(a, b) { var tmpa, ...
- ADF_Database Develop系列2_通过UML数据库开发之将Logical UML转为Physical Models
2013-05-01 Created By BaoXinjian
- BIP_Oracle Erp标准银行接口XML文件(案例)(待整理)
2014-07-07 Created By BaoXinjian
- mysql5.6优化建议
这篇文章主要介绍了MySQL5.6基本优化配置,详细分解了MySQL5.6需要优化的配置项,最终给出了一个优化案例,需要的朋友可以参考下 随着 大量默认选项的改进, MySQL 5.6比以前版 ...