利用Python发送邮件或发带附件的邮件
作者:元芳啊
这篇文章主要介绍了如何利用Python发送邮件或发带附件的邮件,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下。
本文使用的是163邮件进行测试。
注:163邮箱现在需要使用 客户端授权码 进行测试,不再支持邮箱密码进行测试。
1、使用Python发Text 邮件
import smtplib # 发送字符串的邮件 from email.mime.text import MIMEText # 设置服务器所需信息 fromEmailAddr = '发件人邮箱地址' # 邮件发送方邮箱地址 password = 'email password' # 密码(部分邮箱为授权码) toEmailAddrs = ['接收方地址'] # 邮件接受方邮箱地址,注意需要[]包裹,这意味着你可以写多个邮件地址群发 # 设置email信息 # ---------------------------发送字符串的邮件----------------------------- # 邮件内容设置 message = MIMEText('hello,test Python send Email.', 'plain', 'utf-8') # 邮件主题 message['Subject'] = 'python test email' # 发送方信息 message['From'] = fromEmailAddr # 接受方信息 message['To'] = toEmailAddrs[0] # --------------------------------------------------------------------- # 登录并发送邮件 try: server = smtplib.SMTP('smtp.163.com') # 163邮箱服务器地址,端口默认为25 server.login(fromEmailAddr, password) server.sendmail(fromEmailAddr, toEmailAddrs, message.as_string()) print('success') server.quit() except smtplib.SMTPException as e: print("error:", e)
2、使用Python发送带附件的邮件
import smtplib # 发送字符串的邮件 from email.mime.text import MIMEText # 需要 MIMEMultipart 类 from email.mime.multipart import MIMEMultipart # 设置服务器所需信息 fromEmailAddr = '发件人邮箱地址' # 邮件发送方邮箱地址 password = 'email password' # 密码(部分邮箱为授权码) toEmailAddrs = ['收件人地址'] # 邮件接受方邮箱地址,注意需要[]包裹,这意味着你可以写多个邮件地址群发 # 设置email信息 # ---------------------------发送带附件邮件----------------------------- # 邮件内容设置 message = MIMEMultipart() # 邮件主题 message['Subject'] = 'python test email' # 发送方信息 message['From'] = fromEmailAddr # 接受方信息 message['To'] = toEmailAddrs[0] # 邮件正文内容 message.attach(MIMEText('hello,test Python send Email', 'plain', 'utf-8')) # 构造附件 att1 = MIMEText(open('text.txt', 'rb').read(), 'base64', 'utf-8') att1['Content-type'] = 'application/octet-stream' att1['Content-Disposition'] = 'attachment; filename="test.zip"' message.attach(att1) # --------------------------------------------------------------------- # 登录并发送邮件 try: server = smtplib.SMTP('smtp.163.com') # 163邮箱服务器地址,端口默认为25 server.login(fromEmailAddr, password) server.sendmail(fromEmailAddr, toEmailAddrs, message.as_string()) print('success') server.quit() except smtplib.SMTPException as e: print("error:", e)
以上就是利用Python发送邮件或发带附件的邮件的详细内容,更多关于python 发送邮件的资料请关注脚本之家其它相关文章!
您可能感兴趣的文章:
- 使用Python3 poplib模块删除服务器多天前的邮件实现代码
- python如何发送带有附件、正文为HTML的邮件
- python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
- 用python监控服务器的cpu,磁盘空间,内存,超过邮件报警
- python实现发送QQ邮件(可加附件)
- python实现定时发送邮件到指定邮箱
- python 发送邮件的四种方法汇总
- 详解python定时简单爬取网页新闻存入数据库并发送邮件
- python基于exchange函数发送邮件过程详解
- Python发送邮件实现基础解析
- Python自动发送和收取邮件的方法
- python 实现网易邮箱邮件阅读和删除的辅助小脚本