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

用Python编写的简单邮件发送程序

发布时间:2023-12-04 11:03:23

邮件是现代生活中非常常见的通讯方式之一。Python提供了多个库来实现邮件发送功能,其中最常用的是smtplib库。

smtplib库是Python内置的SMTP(Simple Mail Transfer Protocol)协议的客户端实现。它允许我们通过SMTP服务器发送电子邮件。

下面是一个使用Python编写的简单邮件发送程序:

import smtplib
from email.mime.text import MIMEText

def send_email(subject, message, from_email, to_email, smtp_server, smtp_port, smtp_username, smtp_password):
    # 创建邮件
    msg = MIMEText(message)
    msg['Subject'] = subject
    msg['From'] = from_email
    msg['To'] = to_email

    # 连接SMTP服务器
    server = smtplib.SMTP(smtp_server, smtp_port)
    server.starttls()
    server.login(smtp_username, smtp_password)

    # 发送邮件
    server.sendmail(from_email, to_email, msg.as_string())
    server.quit()

# 使用例子
subject = "测试邮件"
message = "这是一封测试邮件。"
from_email = "sender@example.com"
to_email = "recipient@example.com"
smtp_server = "smtp.example.com"
smtp_port = 587
smtp_username = "username"
smtp_password = "password"

send_email(subject, message, from_email, to_email, smtp_server, smtp_port, smtp_username, smtp_password)

在上述程序中,我们首先导入了smtplib和email.mime.text模块。然后定义了一个send_email函数,该函数接收邮件的主题、正文内容、发件人、收件人、SMTP服务器信息等参数。

在send_email函数中,我们首先创建了一个MIMEText对象,设置邮件的主题、发件人、收件人等信息。然后使用smtplib.SMTP类连接到SMTP服务器,并进行认证。最后调用SMTP.sendmail方法发送邮件,并关闭与SMTP服务器的连接。

在使用例子中,我们定义了一个测试邮件的主题、正文内容、发件人、收件人、SMTP服务器信息等变量,并调用send_email函数发送邮件。

需要注意的是,为了发送邮件,我们需要提供一个SMTP服务器的主机名和端口号,并且需要提供SMTP服务器的用户名和密码进行认证。

这就是一个使用Python编写的简单邮件发送程序。你可以根据自己的需求修改程序中的变量来发送不同的邮件。