python smtplib模块发邮件(带附件)的例子

发布时间:2019-09-02编辑:脚本学堂
本文介绍下,使用python smtplib模块发送邮件的例子,smtplib模块可以发送普通文本邮件,也可以发送html邮件,且可以带上附件。有兴趣的朋友一起研究下。

1,python smtplib模块发送普通邮件
 

复制代码 代码示例:

#!/bin/python
#coding=utf-8
import smtplib
from email.mime.text import MIMEText

sender = 'your@email'
mailto = 'target@email'

#邮件信息
msg =MIMEText("It's a text email!")
msg['Subject'] = 'Hello world'
msg['to'] = mailto
msg['From'] = sender

#连接发送服务器
smtp = smtplib.SMTP('smtp.xxx.xxx')
smtp.login(username,password)

#发送
smtp.sendmail(sender,mailto,msg.as_string())
smtp.quit()
类MIMEText():用来生成text/* 类型的MIME邮件主体对象,完整参数格式是:MIMEText(_text, _subtype=’plain’, _charset=’us-ascii’)

_text:字符型的邮件内容对象;
_subtype:MIME内容类型,默认为“普通”,如:MIMEText(text,’html’)指html格式的邮件内容;
_charset:指定的字符集,如utf-8

2,python smtplib模块发送带附件的邮件
 

复制代码 代码示例:

#!/bin/python
#coding=utf-8
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage

sender = 'your@email'
mailto = 'target@email'
imgfiles = 'text_1.png'

msg = MIMEMultipart()
msg['Subject'] = 'Test send image!'
msg['To'] = mailto
msg['From'] = sender

# 邮件内容
Contents = MIMEText('<b>This is a img!</b>','html')
msg.attach(Contents)

# 带上二进制附件 
att = MIMEImage(file(imgfiles, 'rb').read()) 
att["Content-Type"] = 'application/octet-stream' 
att.add_header('content-disposition','attachment',filename=imgfiles)
msg.attach(att)

# 登录邮件发送服务器
smtp = smtplib.SMTP('smtp.xxx.xxx')
smtp.login(username,password)

# 发送邮件
smtp.sendmail(sender, mailto, msg.as_string())
smtp.quit()

说明:
1、类MIMEMultipart():用来生成包含多个部分的邮件体的MIME对象;
2、类MIMEImage():如MIMEText(),用来生成image/* 类型的MIME的邮件主体对象;

有关smtplib模块的详细介绍,这里有篇文章:python smtplib模块发送邮件 ,大家可以参考下。

3,在邮件内容中插入图片:
 

复制代码 代码示例:

imgData = MIMEImage(file(imgfiles, 'rb').read())
imgData.add_header('Content-ID', '<%s>'% imgfiles)
msg.attach(imgData )

contents = MIMEText('<img src="cid:%s">'% imgfiles,'html')
msg.attach(contents)

您可能感兴趣的文章:
分享:python发邮件的综合实例
python邮件发送模块smtplib的实例详解
python smtplib发送邮件的例子 python使用126邮箱发送邮件
Python发送带附件的邮件的实现代码
python 发送邮件乱码的解决方法
python从文件读取邮件地址输出的例子
python使用gmail发送邮件的实例代码
python smtplib模块发送邮件的实例详解
python smtp模块发送邮件的代码
python发送邮件的脚本一例
python结合php解决发送邮件乱码的问题
python发送邮件的例子
python发送邮件的实例代码
python 发送邮件的代码