用Python编写一个邮件发送脚本
发布时间:2023-12-04 10:44:10
Python提供了许多用于发送邮件的库,其中比较常用的是smtplib和email库。下面是一个使用Python编写的邮件发送脚本的示例:
import smtplib
from email.mime.text import MIMEText
from email.header import Header
def send_email(sender, password, receiver, subject, content):
# 设置邮件内容,包括发送者、接收者、主题和正文
message = MIMEText(content, 'plain', 'utf-8')
message['From'] = Header(sender, 'utf-8')
message['To'] = Header(receiver, 'utf-8')
message['Subject'] = Header(subject, 'utf-8')
try:
# 连接SMTP服务器,登录邮箱
smtpObj = smtplib.SMTP_SSL('smtp.example.com', 465) # SMTP服务器地址和端口
smtpObj.login(sender, password) # 邮箱账号和密码
# 发送邮件
smtpObj.sendmail(sender, receiver, message.as_string())
smtpObj.quit()
print("邮件发送成功")
except smtplib.SMTPException:
print("邮件发送失败")
# 使用例子
if __name__ == '__main__':
sender = 'your_email@example.com' # 发送者邮箱账号
password = 'your_password' # 发送者邮箱密码
receiver = 'recipient@example.com' # 接收者邮箱账号
subject = 'Test Email' # 邮件主题
content = 'This is a test email sent from Python.' # 邮件内容
send_email(sender, password, receiver, subject, content)
在上述示例中,我们导入了smtplib和email库,并定义了一个名为send_email的函数,用于发送邮件。该函数接收发送者邮箱账号、密码、接收者邮箱账号、主题和正文作为输入参数。
在函数内部,我们使用MIMEText类创建了一个纯文本类型的邮件消息,并设置了发送者、接收者、主题和正文。然后,我们使用SMTP_SSL类连接SMTP服务器,并使用login方法进行登录。
最后,我们使用sendmail方法发送邮件,并使用quit方法关闭SMTP连接。如果发送邮件成功,就会打印"邮件发送成功",否则打印"邮件发送失败"。
在使用例子中,我们提供了发送者邮箱账号、密码、接收者邮箱账号、主题和正文。你只需要将这些信息替换为你自己的邮箱账号和密码,就可以运行脚本发送邮件了。
需要注意的是,这只是一个简单的示例,实际中可能还需要处理异常情况、设置附件等。同样,可以根据需要使用其他库或功能来实现更复杂的邮件发送需求。
