(五十一)自动化测试高级应用之自动发邮件功能-发送带附件的邮件

随笔记录方便自己和同路人查阅。

#------------------------------------------------我是可耻的分割线-------------------------------------------

  学习selenium自动化之前,最好先学习HTML、CSS、JavaScript等知识,有助于理解定位及操作元素的原理。关于python和selenium安装请自行搜索别的资料,这里就不多做介绍了,所有例子均使用python3.6+selenium执行的。

#------------------------------------------------我是可耻的分割线-------------------------------------------

发送带附件的邮件

在发送文件时,有时需要发送附件,下面的实例实现了带附件的邮件发送。

复制代码
# !/usr/bin/env python
# -*- coding: UTF-8 –*-
__author__ = 'Mr.Li'
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

#发送邮箱服务器
smtpserver = 'smtp.qq.com'
#发送邮箱
sender = 'xxxx@qq.com'
#接收邮箱
receiver = 'xxxx@qq.com'
#发送邮箱用户/密码
user = 'xxxx@qq.com'
password = 'mbnzfxlnmwbkbcfb'#这里不能填写邮箱密码而是填写邮箱授权码
#发送邮件主题
subject = 'Python send email test'

#发送的附件
sendfile = open("d:\\log.txt",'rb').read()

att = MIMEText(sendfile,"base64", 'utf-8')
att['Content-Type'] = 'application/octet-stream'
att['Content-Disposition'] = 'attachment;filename="log.txt"'

msgRoot = MIMEMultipart('related')

msgRoot['Subject'] = subject
msgRoot.attach(att)

#链接发送邮件
smtp = smtplib.SMTP()
smtp.connect(smtpserver)
smtp.login(user,password)
smtp.sendmail(sender,receiver,msgRoot.as_string())
smtp.quit()
复制代码

相比于上一个实例,通过MIMEMultipart()模块构造的带附件的邮件如下图:

 

posted @   李荣洋  阅读(546)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
点击右上角即可分享
微信分享提示