Python3 smtplib — SMTP 协议客户端
smtplib
是 Python 的一个标准库,它提供了一个简单的 SMTP 协议客户端。以下是一个使用 smtplib
发送电子邮件的示例代码:
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
# 邮件发送者和接收者
sender_email = "your_email@example.com"
receiver_email = "receiver_email@example.com"
password = "your_password" # 注意:这里的密码是指IMAP/SMTP服务的密码,不是邮箱密码
# 创建邮件对象和设置邮件内容
message = MIMEMultipart("alternative")
message["Subject"] = "Email Subject"
message["From"] = sender_email
message["To"] = receiver_email
# 创建邮件正文
text = """\
This is an example email body.
It can be plain text or HTML.
"""
html = """\
<html>
<body>
<p>This is an example email body.</p>
<p>It can be plain text or HTML.</p>
</body>
</html>
"""
# 添加文本和HTML的部分
part1 = MIMEText(text, "plain")
part2 = MIMEText(html, "html")
# 添加正文到邮件对象中
message.attach(part1)
message.attach(part2)
# 发送邮件
try:
# 创建SMTP服务器连接
server = smtplib.SMTP('smtp.example.com', 587) # 使用SMTP_SSL端口通常是465,或者使用SMTP端口通常是587
server.starttls() # 启用TLS
server.login(sender_email, password)
# 发送邮件
server.sendmail(sender_email, receiver_email, message.as_string())
print("Email sent successfully!")
except Exception as e: # 如果发生错误,打印错误信息
print("Something went wrong...", e)
finally:
server.quit() # 关闭服务器连接
确保替换 sender_email
, receiver_email
, 和 password
为你的实际邮箱地址和密码。smtp.example.com
也应替换为你实际使用的SMTP服务器地址。常见的SMTP服务器包括 "smtp.gmail.com", "smtp.office365.com", "smtp.outlook.com", "smtp.qq.com" 等。
评论已关闭