欢迎访问宙启技术站
智能推送

Python邮件发送教程:了解send_mail()函数的基本用法

发布时间:2024-01-10 10:21:28

在Python中,可以使用smtplib模块发送电子邮件。smtplib模块提供了SMTP类,该类用于连接到SMTP服务器并发送电子邮件。为了方便使用,通常会封装一个名为send_mail()的函数来发送电子邮件。

send_mail()函数的基本用法如下:

def send_mail(smtp_server, sender, receivers, subject, message):
    import smtplib
    from email.mime.text import MIMEText
    
    # 创建MIMEText对象,      个参数为邮件正文,第二个参数为MIME的subtype,在这里我们使用plain表示纯文本邮件
    msg = MIMEText(message, 'plain', 'utf-8')
    
    # 设置邮件主题
    msg['Subject'] = subject
    
    # 设置发件人和收件人
    msg['From'] = sender
    msg['To'] = ', '.join(receivers)
    
    # 连接SMTP服务器,并登录
    server = smtplib.SMTP(smtp_server)
    server.login(sender, password)  # 如果SMTP服务器需要身份验证,则需要提供密码
    
    # 发送邮件
    server.sendmail(sender, receivers, msg.as_string())
    
    # 关闭SMTP服务器的连接
    server.quit()

下面是一个使用send_mail()函数的示例,假设要发送一封电子邮件给多个收件人:

smtp_server = 'smtp.example.com'
sender = 'sender@example.com'
receivers = ['recipient1@example.com', 'recipient2@example.com']
subject = 'Hello, World!'
message = 'This is a test email.'

send_mail(smtp_server, sender, receivers, subject, message)

在上述示例中,我们通过指定SMTP服务器、发件人、收件人、主题和消息参数调用send_mail()函数来发送电子邮件。

需要注意的是,为了使用send_mail()函数,你需要在代码开头导入smtplib和MIMEText类,并且需要提供SMTP服务器的地址、发件人的邮箱、收件人的邮箱、邮件主题和邮件正文。

使用send_mail()函数发送电子邮件时,需要确保SMTP服务器的设置正确,并且发件人的邮箱和密码正确。

以上是Python邮件发送教程中send_mail()函数的基本用法以及一个使用示例。你可以根据自己的需要自定义该函数,并根据具体情况进行相应的配置。同时,你还可以使用email模块中的其他类来发送带有附件、图片或HTML格式的电子邮件。