第二十八章 使用 Plumbum 和 yagmail 打造一个发送邮件的命令行工具(实战)

一、思路

需求:

  1. 实现在命令行里调用 Python 脚本实现发送邮件,通过给脚本传入不同的参数,实现给不同的人发送不同内容的邮件信息。
  2. 同时要支持命令行指定选项和参数的方式,也支持从配置文件导入的方式。

二、代码

1. 先创建一个自定义的类 SendMail, 并且继承 cli.Application

SendMail 中定义如下内容:
a. 版本号

b. 收件人列表(to_emails)

c. SMTP 信息

d. 定义指定配置文件的选项

image.png

2. 设置子命令 register 用于注册账号信息到操作系统的密钥环中

在子命令 register 中,配置关于 SMTP 的如何指定账户和授权密码的参数选项。

这里使用了密钥环的方式。目前测试的结果是,存在部分操作系统版本不兼容的情况。

image.png

3. 定义子命令 send 用于发送邮件

image.png

4. 定义主逻辑函数

image.png
image.png

想获取源码和使用方法微我 y86000153

你可能感兴趣的:(第二十八章 使用 Plumbum 和 yagmail 打造一个发送邮件的命令行工具(实战))