阅读文本大概需要 3 分钟
生活或者工作中我们经常容易忘记一些事情,这时候我们需要借助一些事物来提醒我们。读者中应该有很多运维攻城狮和测试攻城狮,服务器有异常时需要提醒我们,自动化测试执行完需要发送测试报告,这时我们可以借助邮件来告诉我们。今天我们先从简单的开始,用 Python 发送邮件给指定的收件人。
为了达到及时提醒的功能,目前我们用得多的社交软件就是微信和 QQ 了,所以我们这次选择发送到 QQ 邮箱,因为微信和 QQ绑定QQ邮箱后, QQ 邮箱收到消息时会在微信和 QQ 的消息列表显示。以下是我运行了 3 次程序后的效果图,一张是 QQ 信息列表里的,一张是微信消息列表里的。
为了使手机 QQ 和微信的消息列表能收到邮件提醒,我们需要做简单的设置,手机 QQ 在上方搜索框输入「QQ邮箱」,点击「加关注」按钮,关注其公众号就可以收到邮件提醒了。
微信设置方法:
接下来,分析下程序是怎么实现的。
语言:Python 编辑器:Pycharm 库:smtplib、email
我们先设置邮件的发送账号和接收账号,作为变量,这里我用的是都是 QQ 账号,发送方为我的小号。
my_sender = 'xxxx@qq.com' # 发件人邮箱账号
my_user = 'xxxx@qq.com' # 收件人邮箱账号
接下来我们设置邮箱的一些基本信息和登录的操作。把发送文本用 MIMEText 方法处理成中文编码。设置邮件的主题和邮件收发方等信息。
登录邮箱我们需要定义邮件的传输协议,一般的邮件传输协议是 SMTP,QQ 邮箱是 smtp.qq.com,网易邮箱是 smtp.qq.com,其他邮箱大家自行可在网上查看。端口默认为 25。用 login 方法登录邮箱,第一个参数是登录账号,第二个参数注意一下,这里的密码不是邮箱的登录密码,而是邮箱的授权码,在邮箱的设置中查看,以下是QQ 邮箱查看方法,其他邮箱查看方法类似。
登录成功后再用 sendmail 方法发送邮件,发送完后退出邮件。
最后输入发送邮件的标题和发送内容参数,调用函数即可实现发送邮件和接受邮件的功能。
mail_title = '报告'
mail_content = '报告内容'
sendMail(mail_title, mail_content)
这样,发送和接收邮件的功能就实现了,下次就可以结合实际项目调用此功能从而达到实际项目的邮件提醒功能。
觉得不错,点赞、赞赏、转发朋友圈都是一种支持。