使用python写一段smtp发送邮件的示例
时间: 2023-09-19 07:05:50 浏览: 141
python3使用SMTP发送简单文本邮件
### 回答1:
import smtplib# 创建SMTP对象
smtpObj = smtplib.SMTP('smtp.example.com', 25)# 登录到SMTP服务器
smtpObj.login('username', 'password')# 发送邮件
smtpObj.sendmail(
'sender@example.com',
'receiver@example.com',
'Subject: 测试邮件\n\n这是一封测试邮件。'
)# 退出
smtpObj.quit()
### 回答2:
下面是使用Python写一个SMTP发送邮件的示例:
```python
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.header import Header
# 设置邮件发送方和接收方的邮箱地址
sender = 'sender@example.com'
receiver = 'receiver@example.com'
# 创建多部分(MIME)邮件对象,并设置邮件标题、发件人和收件人
message = MIMEMultipart()
message['Subject'] = Header('Python SMTP示例', 'utf-8')
message['From'] = sender
message['To'] = receiver
# 构造纯文本邮件内容
text = MIMEText('这是一封使用Python SMTP发送的测试邮件。', 'plain', 'utf-8')
message.attach(text)
try:
# 使用SMTP服务器发送邮件
smtpObj = smtplib.SMTP('smtp.example.com', 25) # 设置SMTP服务器地址和端口号
smtpObj.login('your_username', 'your_password') # 输入SMTP服务器的用户名和密码
smtpObj.sendmail(sender, receiver, message.as_string()) # 发送邮件
smtpObj.quit() # 关闭连接
print('邮件发送成功')
except smtplib.SMTPException:
print('Error: 无法发送邮件')
```
在示例中,首先导入了`smtplib`、`MIMEMultipart`、`MIMEText`和`Header`模块。然后,设置了发送方和接收方的邮箱地址。创建一个多部分邮件对象,设置邮件标题、发件人和收件人。使用`MIMEText`构造纯文本邮件内容,并将其附加到多部分邮件对象中。接下来,使用`SMTP`服务器连接地址和端口号创建了一个SMTP对象,并输入SMTP服务器的用户名和密码进行登录。最后,调用`sendmail`方法发送邮件,并在发送成功后关闭连接。
注意要根据实际情况修改SMTP服务器的地址、端口号、用户名和密码等信息。
### 回答3:
使用Python发送邮件需要借助smtplib库。下面是一个简单的示例:
```python
import smtplib
from email.mime.text import MIMEText
from email.header import Header
# 1. 设置邮箱账号和密码
email = 'your_email@example.com'
password = 'your_password'
# 2. 设置邮件内容
subject = '邮件标题'
content = '邮件内容'
# 3. 设置发件人和收件人
sender = email
receiver = 'receiver@example.com' # 可以是单个邮箱,也可以是一个列表
# 4. 构造邮件内容
message = MIMEText(content, 'plain', 'utf-8')
message['From'] = Header(sender)
message['To'] = Header(receiver)
message['Subject'] = Header(subject)
# 5. 发送邮件
try:
smtpObj = smtplib.SMTP_SSL('smtp.example.com', 465) # 设置SMTP服务器地址和端口号
smtpObj.login(email, password) # 登录邮箱账号
smtpObj.sendmail(sender, receiver, message.as_string()) # 发送邮件
smtpObj.quit() # 退出SMTP连接
print("邮件发送成功")
except smtplib.SMTPException as e:
print("邮件发送失败: ", str(e))
```
在上面的示例中,我们首先设置了邮箱账号和密码,然后设置了邮件的标题和内容。接下来设置了发件人和收件人,可以是单个邮箱或一个邮箱列表。然后构造了邮件内容,并在发送邮件时候提供了SMTP服务器地址和端口号。最后调用`sendmail`方法发送邮件,如果发送成功,则输出"邮件发送成功",否则输出"邮件发送失败"并打印错误信息。
注意:示例中的邮箱账号和密码需要替换成有效的值,SMTP服务器地址和端口号需要根据实际情况进行设置。
阅读全文