Python实战技巧(9)Python发送邮件

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 smtplib
from 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.com
send_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()    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

redrose2100

您的鼓励是我最大的创作动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值