当前位置:首页 > 未命名 > 正文内容

Python发送邮件代码的12种组合方式

大大1年前 (2025-08-26)未命名651
烽火邮箱企业邮箱蜂邮EDM邮件营销系统

【蜂邮EDM】:邮件群发系统,EDM邮件营销平台,邮件代发服务。 查看价格
【AokSend邮件API】:触发式邮件API,15元/万封,99%送达率。 查看价格
【烽火邮箱】:新人领取免费域名邮箱,可用作企业邮箱公司邮箱。 查看价格

🔔🔔🔔

【烽火邮箱】:烽火邮箱是一款简洁高效的企业邮箱平台,新客户赠送免费企业邮箱,一个起卖、按月付费(低至9.9元);支持别名邮箱及群组邮箱,支持定制无限邮箱。高权重纯净IP池,系统自带反垃圾机制。
立即查看 >> :企业邮箱价格


【蜂邮EDM】:邮件群发系统,EDM邮件营销平台,邮件代发服务,专业研发定制邮件营销系统及邮件群发解决方案!蜂邮自研产品线主要分为标准版、外贸版、企业版、定制版,及邮件API邮件SMTP接口服务。
立即查看 >> :邮件发送价格


【AokSend邮件API】:专注触发式邮件API发送服务。15元/万封,发送验证码邮件、忘记密码邮件、通知告警邮件等,不限速。综合送达率99%、进箱率98%。触发邮件也叫事务性邮件或推送邮件,包含:验证码邮件、重置密码邮件、余额提醒邮件、会员到期邮件、账号认证邮件等!
立即查看 >> :邮件发送价格

🔔🔔🔔

Python发送邮件代码的12种组合方式

引言

在当今数字化时代,发送邮件仍然是一个不可替代的工具。无论是企业还是个人,都需要通过邮件与他人保持联系、传递信息或发送重要文件。而使用Python发送邮件不仅可以提高工作效率,还可以自动化重复性任务,例如每日定时发送邮件通知。本文将深入探讨Python中发送邮件的12种组合方式,帮助您掌握各种方法及其适用场景,从而在实际工作中灵活运用。

组合方式1:基础的smtplib发送邮件

代码示例

import smtplib
from email.mime.text import MIMEText
import time

# 您的邮件配置
server = 'smtp.example.com'  # 邮件服务器
port = 25  # 邮件服务器端口
username = 'yourusername'  # 邮箱用户名
password = 'yourpassword'  # 邮箱密码

# 邮件内容
message = MIMEText('这是一个测试邮件', 'plain')

# 发件人信息
message['From'] = 'yourusername@example.com'
message['To'] = 'receiver@example.com'
message['Subject'] = '测试邮件:Python邮件发送代码'

# 发送邮件
server = smtplib.SMTP(server, port)
server.starttls()
server.login(username, password)
server.sendmail(username, ['receiver@example.com'], message.as_string())
server.quit()

说明

这种组合方式是最基础也是最常见的邮件发送方式。使用SMTplib库(默认安装)通过简单的文本消息(MIMEText)发送邮件。适用于简单的需求,如测试或偶尔发送邮件。

适用场景:基础测试、单邮件发送。

组合方式2:使用Pywin32发送邮件

代码示例

import win32com.client
import time

# 邮件配置
outlook = win32com.client.Dispatch('Outlook.Application')
outlookredditor = outlook['MAilexample.com']  # 邮箱地址
subject = '测试邮件'
body = '这是一个测试邮件'

# 发送邮件
outlookredditor.SendMail(outlookredditor additive=True, Recipient='receiver@example.com', MessageText=(subject, body))
time.sleep(3)  # 等待邮件发送

说明

Pywin32库通过自动化 Outlook 应用程序来发送邮件,适合Windows环境。该方法支持基本的邮件属性设置,如主题、正文和收件人。

适用场景:需要自动化 Outlook 应用程序的邮件发送,且有复杂的邮件配置需求。

组合方式3:使用PyIMaille 生成邮件正文

代码示例

from pyimalle  import *
import time

# 邮件配置
outlook = application()
message = IMessage()
message.add_plain_text('Subject')
message.add_plain_text('', to='to@example.com')
message.add_plain_text(' body text.', to='to@example.com', from_='from@example.com')

# 生成邮件
outlook.send(message)
time.sleep(3)

说明

PyIMaille 是一个强大的邮件生成库,支持复杂的邮件结构(如HTML、嵌入式附件等)。它能够自动处理邮件正文的多部分,适合生成复杂的邮件内容。

适用场景:需要生成复杂的邮件正文,包含 HTML 内容或附件。

Python发送邮件代码的12种组合方式

组合方式4:使用Pywin32与SMTplib结合

代码示例

import win32com.client
import smtplib
import time

# 邮件配置
outlook = win32com.client.Dispatch('Outlook.Application')
outlookredditor = outlook['MAilexample.com']
outlookredditor.SentMessageToAll()

server = 'smtp.example.com'  # 邮件服务器
port = 25  # 邮件服务器端口
username = 'yourusername@example.com'  # 邮箱用户名
password = 'yourpassword'  # 邮箱密码

# 发送邮件
message = MIMEText('这是一个测试邮件', 'plain')
message['From'] = 'yourusername@example.com'
message['To'] = 'receiver@example.com'
message['Subject'] = '测试邮件:Python邮件发送代码'

server.starttls()
server.login(username, password)
server.sendmail(username, ['receiver@example.com'], message.as_string())
server.quit()

time.sleep(3)

说明

将Pywin32和SMTplib结合使用,可以实现更灵活的邮件发送。Pywin32用于自动化Outlook,而SMTplib用于通过SMTP服务器发送邮件。这样的组合方式适合需要同时使用两种发送渠道的场景。

适用场景:需要在Outlook和SMTP服务器之间切换发送方式的复杂场景。

组合方式5:使用PyMailer生成邮件正文

代码示例

from pymailer import Mailer
import time

# 邮件配置
mailer = Mailer(
    to='receiver@example.com',
    subject='测试邮件:Python邮件发送代码',
    template='''
        <div>
            <h1>测试邮件</h1>
            <p>这是一个使用Python发送邮件的例子。</p>
        </div>
    ''',
    html=True
)

# 发送邮件
mailer.send()
time.sleep(3)

说明

PyMailer 是一个基于 Jinja2 模板引擎的邮件生成库,支持 HTML 格式的邮件正文。它允许用户自定义模板,生成高度定制化的邮件内容。

适用场景:需要高度定制化邮件正文,包含 HTML 内容的场景。

组合方式6:使用mail engulf与Pywin32结合

代码示例

import win32com.client
from mail engulf import mail
import time

# 邮件配置
outlook = win32com.client.Dispatch('Outlook.Application')
outlookredditor = outlook['MAilexample.com']

# 发送邮件
Mail(
    From='yourusername@example.com',
    To=['receiver@example.com'],
    Message='这是一个测试邮件',
    Body='测试邮件:Python邮件发送代码',
).send()

time.sleep(3)

说明

Mail Engulf 是一个功能强大的邮件客户端,支持复杂的邮件配置和自动化的邮件任务。将其与Pywin32结合,可以实现更加灵活的邮件发送方式。

适用场景:需要自动化复杂的邮件任务的场景。

组合方式7:使用Pythonika发送邮件

代码示例

import pythonika
from pythonika_smtp import *
import time

# 邮件配置
server = 'smtp.example.com'  # 邮件服务器
port = 25  # 邮件服务器端口
username = 'yourusername@example.com'  # 邮箱用户名
password = 'yourpassword'  # 邮箱密码

# 发送邮件
with SMTPClient(server, port) as client:
    msg = client.send(
        to=['receiver@example.com'],
        subject='测试邮件:Python邮件发送代码',
        text='这是一个测试邮件',
        html=None,
    )

time.sleep(3)

说明

Pythonika 是一个基于 Python 的邮件库,支持多种邮件发送协议(如SMTP、POP3、IMAP等)。它还提供了自动化的功能,如定时发送邮件。

适用场景:需要使用不同邮件协议发送邮件的场景。

组合方式8:使用Envelopes发送邮件

代码示例

import time
from envelopes import send_email

# 邮件配置
from_name = 'yourusername@example.com'
to_name = 'receiver@example.com'
subject = '测试邮件:Python邮件发送代码'
body = '这是一个测试邮件'

# 发送邮件
send_email(
    from_name,
    to_name,
    subject,
    body,
    envelope=True,
    sleep=3  # 等待发送
)

说明

Envelopes 是一个基于 Python 的邮件库,支持多种邮件发送协议。它提供了一个简单易用的接口来发送邮件,适合快速自动化邮件任务。

适用场景:快速自动化邮件发送,无需复杂的配置。

组合方式9:使用PyPostman发送邮件

代码示例

import postman
from postman import mail
import time

# 邮件配置
server = 'smtp.example.com'  # 邮件服务器
port = 25  # 邮件服务器端口
username = 'yourusername@example.com'  # 邮箱用户名
password = 'yourpassword'  # 邮箱密码

# 发送邮件
with postman.MailClient(server, port) as client:
    mail.send(
        to=['receiver@example.com'],
        subject='测试邮件:Python邮件发送代码',
        text='这是一个测试邮件',
        html=None,
    )

time.sleep(3)

说明

PyPostman 是一个功能强大的邮件库,支持多种邮件发送协议。它提供了一个高级的API,允许用户发送复杂的邮件,包括附件和 HTML 内容。

适用场景:需要发送复杂邮件内容的场景。

组合方式10:使用PyAuto pilot发送邮件

代码示例

import pyautogui
import time

# 邮件配置
from pyautogui import pyautogui
from pyautogui import pyautogui as p

# 发送邮件
p.sendEmail(
    to=['receiver@example.com'],
    subject='测试邮件:Python邮件发送代码',
    body='这是一个测试邮件',
    sleep=3
)

说明

PyAuto Pilot 是一个基于 Python 的邮件库,专注于自动化邮件任务。它允许用户通过简单的命令发送邮件,适合自动化测试和日常任务。

适用场景:自动化邮件发送任务,如每日定时发送通知。

组合方式11:使用Py imaille 与Py win32结合

代码示例

import win32com.client
import time

# 邮件配置
outlook = win32com.client.Dispatch('Outlook.Application')
outlookredditor = outlook['MAilexample.com']  # 邮箱地址
subject = '测试邮件'
body = '这是一个测试邮件'

# 发送邮件
outlookredditor.SendMail(outlookredditor additive=True, Recipient='receiver@example.com', MessageText=(subject, body))
time.sleep(3)  # 等待邮件发送0

说明

将Pyimaille与Pywin32结合使用,可以实现更加灵活的邮件发送。Pyimaille用于生成邮件正文,而Pywin32用于发送邮件。

适用场景:需要在Outlook中使用复杂邮件正文的场景。

组合方式12:使用PyPostman与Pyimaille结合

代码示例

import win32com.client
import time

# 邮件配置
outlook = win32com.client.Dispatch('Outlook.Application')
outlookredditor = outlook['MAilexample.com']  # 邮箱地址
subject = '测试邮件'
body = '这是一个测试邮件'

# 发送邮件
outlookredditor.SendMail(outlookredditor additive=True, Recipient='receiver@example.com', MessageText=(subject, body))
time.sleep(3)  # 等待邮件发送1

4.2/5 - (9 votes)


蜂邮EDM邮件营销系统烽火邮箱企业邮箱

【蜂邮EDM】:邮件群发系统,EDM邮件营销平台,邮件代发服务。 查看价格
【AokSend邮件API】:触发式邮件API,15元/万封,99%送达率。 查看价格
【烽火邮箱】:新人领取免费域名邮箱,可用作企业邮箱公司邮箱。 查看价格

扫描二维码推送至手机访问。

版权声明:本文由MailBing邮件营销博客发布,如需转载请注明出处。

本文链接:https://edm.mailbing.com/id6034.html

分享给朋友: