python email电子邮件怎么发送普通文本、附件、html格式邮件
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,python email电子邮件怎么发送普通文本、附件、html格式邮件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。=今天学习使用
千家信息网最后更新 2026年11月03日python email电子邮件怎么发送普通文本、附件、html格式邮件
python email电子邮件怎么发送普通文本、附件、html格式邮件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
=今天学习使用smtplib发送电子邮件,并记录学习过程欢迎大家一起交流分享。
新建一个python文件命名为py3_email.py,在这个文件中进行操作代码编写:
import osimport smtplibfrom email.message import EmailMessageimport imghdr#这里使用qq邮箱进行测试#发送普通文本#从环境变量中获取#电子邮箱地址和密码EMAIL_ADDRESS = os.environ.get('EMAIL_ADDRESS')EMAIL_PASSWORD = os.environ.get('EMAIL_PASSWORD')#获取收件人的邮箱地址EMAIL_RECEVIER = os.environ.get('EMAIL_RECEVIER')with smtplib.SMTP('smtp.qq.com',25) as smtp:#使用ehlo识别smtp服务器smtp.ehlo()#启用TLSsmtp.starttls()#再次识别smtpsmtp.ehlo()#登录smtpsmtp.login(EMAIL_ADDRESS,EMAIL_PASSWORD)#smtp.set_debuglevel(1)调试使用subject = 'hello where are you ?'body ='Hi In China!!!!!!'msg = f'{subject}\n\n{body}'smtp.sendmail(EMAIL_ADDRESS,EMAIL_RECEVIER,msg)##注意这里测试的时候,发件人使用的是qq邮箱##使用163邮箱作为发件人会出很多问题。##这里的密码是邮箱的授权码 需要自己登录到邮箱进行设置####使用EmailMessage对象设置邮件主题内容发送e_msg = EmailMessage()e_msg['Subject'] = 'Life is short !!!'e_msg['From'] = EMAIL_ADDRESSe_msg['To'] = EMAIL_RECEVIERe_msg.set_content('How about python?')with smtplib.SMTP('smtp.qq.com',25) as smtp:smtp.login(EMAIL_ADDRESS,EMAIL_PASSWORD)smtp.send_message(e_msg)##发送带附件的邮件e_msg = EmailMessage()e_msg['Subject'] = 'Image from my PC!!!'e_msg['From'] = EMAIL_ADDRESSe_msg['To'] = EMAIL_RECEVIERe_msg.set_content('Image moto attached。。。')#打开图片,添加图片信息到e_msg中with open('0.jpg','rb') as f:file_data = f.read()file_type = imghdr.what(f.name)file_name = f.namee_msg.add_attachment(file_data,maintype='image',subtype=file_type,filename=file_name)#也可以添加多张图片,使用for实现即可#如果是pdf文件做如下调整#e_msg.add_attachment(file_data,maintype='application',subtype='octet-stream',filename=file_name)#其他格式文件可参考apiwith smtplib.SMTP('smtp.qq.com',25) as smtp:smtp.login(EMAIL_ADDRESS,EMAIL_PASSWORD)smtp.send_message(e_msg)####发送一个HTML格式的邮件e_msg = EmailMessage()e_msg['Subject'] = 'html email send!!!'e_msg['From'] = EMAIL_ADDRESSe_msg['To'] = EMAIL_RECEVIERe_msg.set_content('This is a plain text email')e_msg.add_alternative("""\This is an HTML Email!
""", subtype='html')with smtplib.SMTP('smtp.qq.com',25) as smtp:smtp.login(EMAIL_ADDRESS,EMAIL_PASSWORD)smtp.send_message(e_msg)
关于python email电子邮件怎么发送普通文本、附件、html格式邮件问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
邮件
邮箱
格式
电子
文件
问题
普通
文本
电子邮件
附件
图片
内容
发件人
地址
密码
更多
学习
帮助
测试
登录
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
百单网互联网科技有限公司怎么样
广州大一互联网络科技有限公司
互联网科技有限公司经营范围
奇酷互联网络科技公司
易通互联网络科技有限公司
沃里互联网科技
上海亿帐通互联网科技
居家互联网科技有限公司
互联网公司会议桌创意科技软装饰
卫星互联网科技股票
青岛中康互联网医疗科技有限公司
互联网之后的科技是什么
新华互联网科技2019
彤创互联网科技有限公司
华中科技大学互联网的牛人
小米互联网科技园入驻
中天科技中国工业互联网
云鲸互联网络科技有限公司
互联网时代高科技布局
互联网科技博主张洲
互联网科技工作委员会
互联网科技小贷
互联网科技博客
互联网科技公司做什么
山东吉时兔互联网科技有限公司
互联网科技有哪些公司
湖南一路畅行互联网科技
国大互联网教育科技有限公司薪资
福仕德教育科技互联网
互联网科技创业计划的风险分析