跳转到主要内容

带有Markdown文本和HTML内容的电子邮件

项目描述

MarkdownMail

目的

发送包含生成HTML内容的电子邮件。

内容必须使用Markdown语法编写。电子邮件的文本部分将按原样填充;HTML部分将是Markdown内容的转换HTML。

E-mail rendering for the user (HTML part)

安装

$ pip install markdownmail

基本用法

import markdownmail

CONTENT = u"""
SPAMS AND EGGS
==============

This is a demo with a list:

1. Spam
2. Second spam
3. ...and eggs
"""

email = markdownmail.MarkdownMail(
    from_addr=u'alice@example.org',
    to_addr=u'bob@example.org',
    subject=u'MarkdownMail demo',
    content=CONTENT
)

email.send('localhost')

内容必须是Unicode。

更多信息

可以添加附加信息

email = markdownmail.MarkdownMail(
    from_addr=(u'alice@example.org', u'Alice'),
    to_addr=(u'bob@example.org', u'Bob'),
    subject=u'MarkdownMail demo',
    content=CONTENT
)

cc_addrbcc_addr 是可选的。参数 from_addrto_addrcc_addrbcc_addrEnveloppe 库相同。

更改 SMTP 端口

email.send("example.org", port=3325)

更改 SMTP 登录名和密码

email.send("example.org", login="user", password="password")

使用 TLS

email.send("example.org", tls=True)

样式

电子邮件会自动添加一个默认的 CSS,包括无衬线字体和一些小改进。

要覆盖默认 CSS,请将包含样式的字符串传递给 MardownMailcss 可选参数。

import markdownmail

email = markdownmail.MarkdownMail(
    from_addr=u'alice@example.org',
    to_addr=u'bob@example.org',
    subject=u'MarkdownMail demo',
    content="CONTENT",
    css="font-family:monospace; color:green;"
)

运行测试

在执行测试之前,Tox 会自动安装在 virtualenvs 中。使用以下命令执行它们:

$ python setup.py test

禁用测试中的电子邮件发送

如果传递给 send() 方法的参数是 NullServer 的实例,则不会发送电子邮件。

email = markdownmail.MarkdownMail(
    #params
)

email.send(markdownmail.NullServer())

在测试中断言电子邮件

通过子类化 NullServer,可以在 check() 方法中提供自定义行为。

class MyServer(markdownmail.NullServer):
    def check(self, email):
        assert u'bob@example.org' == email.to_addr[0]

email.send(MyServer())

有用的链接

Envelopes 库(MardownMail 是 Envelopes 库的包装器)。

Markdown 语法

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

markdownmail-0.11.0.tar.gz (9.4 kB 查看哈希值)

上传时间

构建分布

markdownmail-0.11.0-py2.py3-none-any.whl (8.7 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下赞助

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面