Python实战技巧(1)Python字典类型数据如何递归地通过点‘.’的方式访问 Python实战技巧(2)Python的pdb调试代码方法详解 Python实战技巧(3)多版本兼容安装部署(py27,py34,py35,py36,
Python实战技巧(1)Python字典类型数据如何递归地通过点‘.’的方式访问
Python实战技巧(2)Python的pdb调试代码方法详解
Python实战技巧(3)多版本兼容安装部署(py27,py34,py35,py36,py37,py38,py39)
Python实战技巧(4)正式在pypi网站发布包的流程详解
Python实战技巧(5)Python版本兼容性测试工具tox实战详解
Python实战技巧(6)Miniconda+Pipenv安装部署开发环境实战详解
Python实战技巧(7)Pycharm如何远程调试远程执行
Python实战技巧(8)Python调用C语言
Python实战技巧(9)Python发送邮件
Python实战技巧(10)Python解析邮件
Python实战技巧(11)使用python收发邮件时需要的邮箱授权码如何获取
1、使用python编写发送邮件的类库
代码如下:
import smtplibfrom email.mime.text import MIMEText
class SendEmail(object):
def __init__(self,send_mail_server):
self.__smtp = smtplib.SMTP(send_mail_server, port=25)
self.__From=""
self.__To=""
self.__password=""
self.__subject=""
self.__context=""
self.__mail=None
def __del__(self):
try:
self.__smtp.quit()
except:
pass
@property
def From(self):
return self.__From
@From.setter
def From(self, From):
self.__From = From
@property
def To(self):
return self.__To
@To.setter
def To(self, To):
self.__To = To
@property
def password(self):
return self.__password
@password.setter
def password(self,pwd):
self.__password=pwd
@property
def context(self):
return self.__context
@context.setter
def context(self,ctx):
self.__context=ctx
@property
def subject(self):
return self.__subject
@subject.setter
def subject(self,subject):
self.__subject=subject
def send(self):
self.__mail=MIMEText(self.__context)
self.__mail["From"]=self.__From
self.__mail["To"]=self.__To
self.__mail["Subject"]=self.__subject
self.__smtp.login(self.__From,self.__password)
self.__smtp.sendmail(self.__From, self.__To, self.__mail.as_string())
2、使用上述封装类发送邮件
直接使用上述封装类即可
send_email=SendEmail("smtp.163.com") # 初始化的时候需要填入发送邮件服务器地址,如163的发送邮件服务器地址是 smtp.163.comsend_email.From="hitredrose@163.com" # 发送邮件的邮箱地址
send_email.To="redrose2200@163.com" # 接收人的邮件地址
send_email.password="LRRDUVG-xxx-YHEMLK" # 发送邮件的邮箱的授权码,这里不能使用密码,要去邮箱配置授权码
send_email.subject="测试邮件标题" # 邮件标题
send_email.context="测试邮件内容\n你好啊,哈哈哈\n邮件结束" # 邮件内容
send_email.send()