标签:
python发邮件需要掌握两个模块的用法,smtplib和email,这俩模块是python自带的,只需import即可使用。smtplib模块主要负责发送邮件,email模块主要负责构造邮件。
smtplib使用较为简单。以下是最基本的语法。
导入及使用方法如下:
import smtplib smtp = smtplib.SMTP() smtp.connect(‘smtp.163.com,25‘) smtp.login(username, password) smtp.sendmail(sender, receiver, msg.as_string()) smtp.quit()
说明:
smtplib.SMTP():实例化SMTP()
connect(host,port):
host:指定连接的邮箱服务器,如新浪邮箱:smtp.sina.com,网易邮箱:smtp.163.com。
port:指定连接服务器的端口号,默认为25.
login(user,password):
user:登录邮箱的用户名。
password:登录邮箱的密码,像笔者用的是网易邮箱,网易邮箱一般是网页版,需要用到客户端密码,需要在网页版的网易邮箱中设置授权码,该授权码即为客户端密码。
sendmail(from_addr,to_addrs,msg,...):
from_addr:邮件发送者地址
to_addrs:邮件接收者地址。字符串列表[‘接收地址1‘,‘接收地址2‘,‘接收地址3‘,...]或‘接收地址‘
msg:发送消息:邮件内容。
quit():用于结束SMTP会话。
email模块下有mime包,mime英文全称为“Multipurpose Internet Mail Extensions”,即多用途互联网邮件扩展,是目前互联网电子邮件普遍遵循的邮件技术规范。
该mime包下常用的有三个模块:text,multpart,image。
导入方法如下:
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
text
邮件发送程序为了防止有些邮件阅读软件不能显示处理HTML格式的数据,通常都会用两类型分别为"text/plain"和"text/html"
part1 = MIMEText(text,‘plain‘, ‘utf-8‘) part2 = MIMEText(html,‘html‘, ‘utf-8‘)
multpart
常见的multipart类型有三种:multipart/alternative, multipart/related和multipart/mixed。
邮件类型为"multipart/alternative"的邮件包括纯文本正文(text/plain)和超文本正文(text/html)。
邮件类型为"multipart/related"的邮件正文中包括图片,声音等内嵌资源。
邮件类型为"multipart/mixed"的邮件包含附件。向上兼容,如果一个邮件有纯文本正文,超文本正文,内嵌资源,附件,则选择mixed类型。
标签:
原文地址:http://www.cnblogs.com/yufeihlf/p/5726619.html