Skip to main content

oh-my-email

什么是 oh-my-email

库如其名,oh-my-email 封装常用的邮件发送功能,使得在项目中发送邮件更加方便。

支持的功能

  • 简洁邮件发送API
  • 支持自定义发件人昵称
  • 支持抄送
  • 支持HTML
  • 支持附件

使用方式

安装 oh-my-email

pip install oh-my-email
from oh_my_email import (
    OhMyEmail, 
    OhMyEmailConfig, 
    OhMyEmailContact, 
    OhMyEmailPlainContent, 
    OhMyEmailHtmlContent
)
from oh_my_email.vo import UrlAttachment, FileAttachment

# 初始化配置
conf = OhMyEmailConfig(
    mail_host='',
    mail_port=25,
    mail_user='your email',
    mail_pass='your password',
)
ome = OhMyEmail(conf=conf)

# 发送纯文本邮件
with ome as cl:
    cl.send(
        subject='test subject',
        sender=OhMyEmailContact('sender email', 'sender name'),
        receiver=[OhMyEmailContact('receiver email', 'receiver name')],
        content=OhMyEmailPlainContent("This is a test email"),
    )

# 发送带抄送人和暗抄送人纯文本邮件
with ome as cl:
    cl.send(
        subject='test subject',
        sender=OhMyEmailContact('sender email', 'sender name'),
        cc=[OhMyEmailContact('cc email', 'cc name')],
        bcc=[OhMyEmailContact('bcc email', 'bcc name')],
        receiver=[OhMyEmailContact('receiver email', 'receiver name')],
        content=OhMyEmailPlainContent("This is a test email"),
    )


# 发送HTML邮件(会将html中包含的图片链接转为base64)
with ome as cl:
    img1 = "https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2554525534.webp"
    text = f"""
    <p>Python 邮件发送测试...</p>
    <p>图片演示:</p>
    <p><img src="{img1}"></p>
    """
    cl.send(
        subject='test subject',
        sender=OhMyEmailContact('sender email', 'sender name'),
        receiver=[OhMyEmailContact('receiver email', 'receiver name')],
        content=OhMyEmailHtmlContent(text),
    )

# 发送带附件的邮件
with ome as cl:
    img1 = "https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2554525534.webp"
    text = f"""
    <p>Python 邮件发送测试...</p>
    <p>图片演示:</p>
    <p><img src="{img1}"></p>
    """
    cl.send(
        subject='test subject',
        sender=OhMyEmailContact('sender email', 'sender name'),
        receiver=[OhMyEmailContact('receiver email', 'receiver name')],
        content=OhMyEmailHtmlContent(text),
        attachment=[UrlAttachment(url='', filename=''), FileAttachment(filepath='', filename='')]
    )

Release files for oh-my-email 0.1.0

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

Source distribution (sdist)

Source distribution for oh-my-email 0.1.0
File Size Uploaded
oh-my-email-0.1.0.tar.gz 4.2 kB Details

Release files / oh-my-email-0.1.0.tar.gz

Download URL oh-my-email-0.1.0.tar.gz
Size 4.2 kB
Tags Source
SHA-256 checksum
How to use checksums
b844d08ad9c30d7f71c6bf76c08c51f290c61239e133c315c1aab8e4af91d500
BLAKE2b-256 checksum
How to use checksums
890e1c0103b6cf67b9a97d0e0f3d7d63b1784cdb576dbefd13f641d0a21eaaca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

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