使用Python进行发邮件功能。
本文使用的是163邮件进行测试。
注:163邮箱现在需要使用 客户端授权码 进行测试,不再支持邮箱密码进行测试。
1、使用Python发Text 邮件
<span>import</span><span> smtplib </span><span>#</span><span> 发送字符串的邮件</span> <span>from</span> email.mime.text <span>import</span><span> MIMEText </span><span>#</span><span> 设置服务器所需信息</span> fromEmailAddr = <span>"</span><span>发件人<a href="https://www.gaodaima.com/tag/%e9%82%ae%e7%ae%b1%e5%9c%b0%e5%9d%80" title="查看更多关于邮箱地址的文章" target="_blank">邮箱地址</a></span><span>"</span> <span>#</span><span> 邮件发送方邮箱地址</span> password = <span>"</span><span>email password</span><span>"</span> <span>#</span><span> 密码(部分邮箱为授权码)</span> toEmailAddrs = [<span>"</span><span>接收方地址</span><span>"</span>] <span>#</span><span> 邮件接受方邮箱地址,注意需要[]包裹,这意味着你可以写多个邮件地址群发</span> <span>#</span><span> 设置email信息</span><span> #</span><span> ---------------------------发送字符串的邮件-----------------------------</span><span> #</span><span> 邮件内容设置</span> message = MIMEText(<span>"</span><span>hello,test Python send Email.</span><span>"</span>, <span>"</span><span>plain</span><span>"</span>, <span>"</span><span>utf-8</span><span>"</span><span>) </span><span>#</span><span> 邮件主题</span> message[<span>"</span><span>Subject</span><span>"</span>] = <span>"</span><span><a href="https://www.gaodaima.com/tag/python" title="查看更多关于python的文章" target="_blank">python</a> test email</span><span>"</span> <span>#</span><span> 发送方信息</span> message[<span>"</span><span>From</span><span>"</span>] =<span> fromEmailAddr </span><span>#</span><span> 接受方信息</span> message[<span>"</span><span>To</span><span>"</span>] =<span> toEmailAddrs[0] </span><span>#</span><span> ---------------------------------------------------------------------</span> <span>#</span><span> 登录并发送邮件</span> <span>try</span><span>: server </span>= smtplib.SMTP(<span>"</span><span>smtp.163.com</span><span>"</span>) <span>#</span><span> 163邮箱服务器地址,端口默认为25</span> <span> server.login(fromEmailAddr, password) server.sendmail(fromEmailAddr, toEmailAddrs, message.as_string()) </span><span>print</span>(<span>"</span><span>success</span><span>"</span><span>) server.quit() </span><span>except</span><span> smtplib.SMTPException as e: </span><span>print</span>(<span>"</span><span>error:</span><span>"</span>, e)
www#gaodaima.com来源gaodai.ma#com搞##代!^码@网搞代码
2、使用Python发送带附件的邮件
<span>import</span><span> smtplib </span><span>#</span><span> 发送字符串的邮件</span> <span>from</span> email.mime.text <span>import</span><span> MIMEText </span><span>#</span><span> 需要 MIMEMultipart 类</span> <span>from</span> email.mime.multipart <span>import</span><span> MIMEMultipart </span><span>#</span><span> 设置服务器所需信息</span> fromEmailAddr = <span>"</span><span>发件人邮箱地址</span><span>"</span> <span>#</span><span> 邮件发送方邮箱地址</span> password = <span>"</span><span>email password</span><span>"</span> <span>#</span><span> 密码(部分邮箱为授权码)</span> toEmailAddrs = [<span>"</span><span>收件人地址</span><span>"</span>] <span>#</span><span> 邮件接受方邮箱地址,注意需要[]包裹,这意味着你可以写多个邮件地址群发</span> <span>#</span><span> 设置email信息</span><span> #</span><span> ---------------------------发送带附件邮件-----------------------------</span><span> #</span><span> 邮件内容设置</span> message =<span> MIMEMultipart() </span><span>#</span><span> 邮件主题</span> message[<span>"</span><span>Subject</span><span>"</span>] = <span>"</span><span>python test email</span><span>"</span> <span>#</span><span> 发送方信息</span> message[<span>"</span><span>From</span><span>"</span>] =<span> fromEmailAddr </span><span>#</span><span> 接受方信息</span> message[<span>"</span><span>To</span><span>"</span>] =<span> toEmailAddrs[0] </span><span>#</span><span> 邮件正文内容</span> message.attach(MIMEText(<span>"</span><span>hello,test Python send Email</span><span>"</span>, <span>"</span><span>plain</span><span>"</span>, <span>"</span><span>utf-8</span><span>"</span><span>)) </span><span>#</span><span> 构造附件</span> att1 = MIMEText(open(<span>"</span><span>text.txt</span><span>"</span>, <span>"</span><span>rb</span><span>"</span>).read(), <span>"</span><span>base64</span><span>"</span>, <span>"</span><span>utf-8</span><span>"</span><span>) att1[</span><span>"</span><span>Content-type</span><span>"</span>] = <span>"</span><span>application/octet-stream</span><span>"</span><span> att1[</span><span>"</span><span>Content-Disposition</span><span>"</span>] = <span>"</span><span>attachment; filename="test.zip"</span><span>"</span><span> message.attach(att1) </span><span>#</span><span> ---------------------------------------------------------------------</span> <span>#</span><span> 登录并发送邮件</span> <span>try</span><span>: server </span>= smtplib.SMTP(<span>"</span><span>smtp.163.com</span><span>"</span>) <span>#</span><span> 163邮箱服务器地址,端口默认为25</span> <span> server.login(fromEmailAddr, password) server.sendmail(fromEmailAddr, toEmailAddrs, message.as_string()) </span><span>print</span>(<span>"</span><span>success</span><span>"</span><span>) server.quit() </span><span>except</span><span> smtplib.SMTPException as e: </span><span>print</span>(<span>"</span><span>error:</span><span>"</span>, e)