您的位置:

Python实现SMTP邮件发送

一、SMTP是什么

SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,是一种用于发送电子邮件的标准网络协议。SMTP协议是一种基于文本的协议,它允许邮件服务器和客户端之间进行相互通信,并通过客户端从邮件服务器发送邮件。

二、Python发送邮件的准备工作

在Python中,实现SMTP邮件发送需要先安装Python自带的smtplib和email库。


!pip install smtplib email

三、SMTP邮件发送步骤

在Python中实现SMTP邮件发送一般步骤如下:

  1. 设置邮件发件人、收件人、主题、正文等相关信息。
  2. 创建SMTP服务器连接。
  3. 登录到SMTP服务器。
  4. 通过SMTP服务器发送邮件。
  5. 关闭SMTP服务器连接。

四、Python实现SMTP邮件发送示例

下面是一个简单的Python代码示例,展示如何通过SMTP协议发送邮件。


import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header

# 设置发送邮件的用户名和密码,或者授权码
sender = "your_email_address@your_email_domain"
password = "your_email_password_or_authorization_code"

# 设置邮件的收件人、主题、正文
receiver = "recipient_email_address"
subject = "邮件主题"
message = "邮件正文"

# 创建一个包含主题和正文的MIMEText对象
message = MIMEText(message, 'plain', 'utf-8')
message['From'] = sender
message['To'] = receiver
message['Subject'] = Header(subject, 'utf-8')

try:
    # 创建SMTP连接
    smtp_obj = smtplib.SMTP('your_smtp_server_address', your_smtp_server_port)
    # 登录到SMTP服务器
    smtp_obj.login(sender, password)
    # 发送邮件
    smtp_obj.sendmail(sender, receiver, message.as_string())
    print("发送成功!")
except smtplib.SMTPException as e:
    print("发送失败,错误原因: %s" % e)
finally:
    # 关闭SMTP连接
    smtp_obj.quit()

五、总结

本文介绍了Python实现SMTP邮件发送的步骤和示例代码。通过Python发送邮件非常简单,只需要几行代码就可以实现。希望本文对你有所帮助!