Skip to main content

smtp-send

Actions PyPI

由于在自动化环境中大量依赖环境变量和命令行参数的行式传参,我想在此基础上去完善一个可发送邮件的命令行工具。主要功能包括:

  • 命令行和环境变量传入相关配置
  • 支持 SSL
  • 支持抄送和密送
  • 支持基于环境变量的正文渲染
  • 支持多附件
  • 支持 HTML *
  • 支持 MarkDown *

注:「*」为待开发

使用说明

usage: smtp-send [-h] [--text TEXT]
                  [--attachments [ATTACHMENTS [ATTACHMENTS ...]]] --subject
                  SUBJECT [--recipients RECIPIENTS] [--sender SENDER]
                  [--smtp-addr SMTP_ADDR] [--smtp-port SMTP_PORT]
                  [--smtp-user SMTP_USER] [--smtp-password SMTP_PASSWORD]
                  [--ssl] [--cc CC] [--bcc BCC] [--render RENDER]
                  [--meta META]

邮件发送工具

optional arguments:
  -h, --help            show this help message and exit
  --text TEXT           正文路径
  --attachments [ATTACHMENTS [ATTACHMENTS ...]], -a [ATTACHMENTS [ATTACHMENTS ...]]
                        附件
  --subject SUBJECT, -s SUBJECT
                        主题
  --recipients RECIPIENTS
                        收件人,多个收件人间用英文逗号分隔
  --sender SENDER       发件人
  --smtp-addr SMTP_ADDR
                        SMTP 服务器地址
  --smtp-port SMTP_PORT
                        SMTP 服务器端口
  --smtp-user SMTP_USER, -u SMTP_USER
                        SMTP 用户
  --smtp-password SMTP_PASSWORD, -p SMTP_PASSWORD
                        SMTP 用户密码
  --ssl                 是否开启ssl
  --cc CC               抄送,多个收件人间用英文逗号分隔
  --bcc BCC             密送,多个收件人间用英文逗号分隔
  --render RENDER       待渲染文件
  --meta META           元数据,json格式的文件

注:

  1. --render和--meta需同时指定,正文渲染才有效
  2. 如果--text被指定,则正文内容为其所指定项
  3. 除了上述两种方式,新添加了从标准输入获取正文的方式

正文渲染

  1. 待渲染文件中变量以 jinja2 的格式指定,详见官方文档

    示例:

    {{ datetime }}
    
  2. meta 文件格式:

    {
        "configmaps": {
            "datetime": "DATETIME"
        }
    }
    
  3. 呈现:

    假设设置环境变量DATETIME为2019年11月23日,那么发送的正文内容就将会是

    2019年11月23日
    

Metadata

Release files for smtp-send 0.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for smtp-send 0.0.7
File Size Uploaded
smtp-send-0.0.7.tar.gz 6.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for smtp-send 0.0.7
File Interpreter ABI Platform
smtp_send-0.0.7-py3-none-any.whl Python 3 none any Details

Total release size: 14.0 kB

Release files / smtp-send-0.0.7.tar.gz

Download URL smtp-send-0.0.7.tar.gz
Size 6.6 kB
Tags Source
SHA-256 checksum
How to use checksums
75950a72b986cbe914ad0df0d5741a232f345555e752535af70e0080ee66dfdd
BLAKE2b-256 checksum
How to use checksums
997acbb7bf798974bcdc4d0c85d0a3dd63f211356598163605dbe1e0a6b96cbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.1

Release files / smtp_send-0.0.7-py3-none-any.whl

Download URL smtp_send-0.0.7-py3-none-any.whl
Size 7.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f47cec7a13a521cfbfd7243d4a10eb1d83ad71407aadbe92a8f70491fed52d60
BLAKE2b-256 checksum
How to use checksums
c41e5432b13d5fc2a2953241099e4d68158b1118022f4405a394519bdcc1d3a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.1

Release history Release notifications | RSS feed

This release

0.0.7 This release

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page