SMTP(简单邮件传输协议)是电子邮件传输的标准协议。Python 提供了 `smtplib` 模块,用于在 Python 中发送电子邮件。下面是一个简单的例子:
```python
import smtplib
# SMTP 服务器地址和端口号
smtp_server = 'smtp.example.com'
smtp_port = 587
# 发件人和收件人
from_addr = 'sender@example.com'
to_addr = 'recipient@example.com'
# 发件人邮箱的用户名和密码
username = 'sender@example.com'
password = 'password'
# 邮件内容
subject = 'Test email'
body = 'This is a test email sent from Python'
# 构造邮件消息
message = f'Subject: {subject}\n\n{body}'
# 创建 SMTP 连接并登录
with smtplib.SMTP(smtp_server, smtp_port) as smtp:
smtp.starttls()
smtp.login(username, password)
# 发送邮件
smtp.sendmail(from_addr, to_addr, message)
print('Email sent')
```
在这个例子中,我们首先定义了 SMTP 服务器的地址和端口号,以及发件人和收件人的电子邮件地址。然后,我们提供了发件人的用户名和密码,以用于登录 SMTP 服务器。
接下来,我们构造了邮件消息的主题和正文,并使用这些信息创建了一条电子邮件消息。最后,我们使用 `smtplib` 模块的 `SMTP` 类创建了一个 SMTP 连接,使用 `starttls` 方法启用安全传输,并使用 `login` 方法登录 SMTP 服务器。然后,我们使用 `sendmail` 方法发送电子邮件,并打印一条消息表示邮件已发送成功。
需要注意的是,这个例子中的电子邮件消息非常简单,只包含了主题和正文。如果您需要发送更复杂的电子邮件,例如带有附件或 HTML 内容的邮件,需要构造更复杂的消息体。同时,如果您的邮件服务提供商需要使用其他认证方式(例如 OAuth2),则需要使用适当的方法进行身份验证。