Web自动化邮件发送

本文介绍了如何使用Python的smtplib和email库实现web自动化邮件发送。内容包括邮件基础知识、邮件传输协议SMTP、POP3、IMAP,以及如何构建包含附件的邮件。还解决了发件人和收件人显示格式的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言       

       最近有小伙伴提醒,说还有邮件服务没有发文章,后面自己检查发现确实自己漏了,所以今天给大家补上。

        首先web自动化可以自动生成报告,但是在实际工作中,最好能够将报告发送给指定的相关人员,那么省的我们手动进行发送,所以邮件发送也是自动化需要完成的一部分。如果此部分要完成自动化的话,肯定有同学一开始会认为也是通过访问邮箱地址,然后元素定位,最后上传附件报告发送,这种思维肯定可以,但是不稳定且极其复杂,所以我们会通过其内置的服务进行完成。

邮件的基础知识

1、邮件发送的基本过程与概念

一封邮件的基本内容通常分为三部分:邮件头部;邮件体;邮件附件

邮件服务器 :类似于现实生活中的邮局,它主要负责接收用户投递过来的邮件,并把邮件投递到邮件接收者的电子邮箱中。
from:wzmtest1313@163.com           ----发件人
to:wzmtest1313@163.com             ----收件人
subject:Crm系统执行测试报告     ----主题
body: 执行总共用例数?通过用例数?失败用例数?   -----内容体

2、邮件传输协议
SMTP协议:全称为 Simple Mail Transfer Protocol,简单邮件传输协议。它定义了邮件客户端软件和SMTP邮件服务器之间,以及两台SMTP邮件服务器之间的通信规则

POP3协议:全称为 Post Office Protocol,邮局协议。它定义了邮件客户端软件和POP3邮件服务器的通信规则

IMAP协议:全称为 Internet Message Access Protocol,Internet消息访问协议,它是对POP3协议的一种扩展,也是定义了邮件客户端软件和IMAP邮件服务器的通信规则

SMTPLib模块

        Python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。

与邮件服务器进行建立会话连接

import smtplibfrom email.mime.text import MIMEText#声明邮件的发送者、接收者sender = 'wzmtest1313@163.com'receivers = 'wzmtest1313@163.com'# 三个参数:第一个为文本内容,第二个 plain 设置文本格式,第三个 utf-8 设置编码message = MIMEText('详细内容如下', 'plain', 'utf-8')message['From'] = sendermessage['To'] = receiversmessage['Subject']="Crm系统测试报告"get_smtp=smtplib.SMTP(host="smtp.163.com")get_smtp.login("wzmtest1313@163.com","wzmtest1313")get_smtp.sendmail(sender,receivers,message.as_string())

上面是一个最简单的邮件发送,下面来详细说明下内容:

a.如果想要能够将邮件发送成功,第一必须先将163发送者的邮件服务器的smtp服务启动

进入163邮箱,点击设置

qq的设置也是一样的,进入qq邮箱,点击设置

b.get_smtp.login传入的两个参数是用户名和密码,而此处的密码并不是你登陆邮箱的密码是刚才说的授权码

c.get_smtp.sendmail传入的三个参数,第一个参数是发送者,第二个是接收者,第三个是邮件对象,邮件对象可以通过email下的MIMEText完成文本对象的创建,此时创建的对象只由邮件头、邮件体两部分所构成,无法通过该对象创建邮件附件。

d.M

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

zemuerqi

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值