能帮我写一个发送邮件的python3的脚本吗
时间: 2023-09-12 18:04:59 浏览: 149
### 回答1:
当然可以!这里是一个使用 Python 3 和 smtplib 库发送电子邮件的示例脚本:
```
import smtplib
# 定义邮件服务器地址和端口
smtp_server = 'smtp.example.com'
smtp_port = 587
# 定义发件人地址、收件人地址和邮件主题
sender = 'sender@example.com'
recipient = 'recipient@example.com'
subject = '测试邮件'
# 定义邮件正文
message = '''\
From: {}
To: {}
Subject: {}
这是一封测试邮件。
'''.format(sender, recipient, subject)
# 连接到邮件服务器
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls() # 使用安全连接
# 登录邮件服务器
username = 'sender@example.com'
password = 'password'
server.login(username, password)
# 发送邮件
server.sendmail(sender, recipient, message)
# 断开连接
server.quit()
```
在这个脚本中,你需要替换 `smtp_server` 和 `smtp_port` 的值为你使用的邮件服务器的地址和端口,并替换 `sender` 和 `recipient` 的值为发件人和收件人的地址。你也需要替换 `username` 和 `password` 的值为你的邮件服务器的用户名和密码。
希望这能帮到你!
### 回答2:
当然可以!下面是一个简单的以SMTP协议发送邮件的Python 3脚本示例:
```python
import smtplib
from email.mime.text import MIMEText
from email.header import Header
def send_email(sender, password, receiver, subject, content):
smtp_server = 'smtp.example.com' # 设置SMTP服务器地址
smtp_port = 25 # 设置SMTP服务器端口号
msg = MIMEText(content, 'plain', 'utf-8') # 创建邮件正文
msg['From'] = Header(sender, 'utf-8') # 设置发件人
msg['To'] = Header(receiver, 'utf-8') # 设置收件人
msg['Subject'] = Header(subject, 'utf-8') # 设置邮件主题
try:
smtpObj = smtplib.SMTP(smtp_server, smtp_port) # 创建SMTP对象
smtpObj.login(sender, password) # 登录SMTP服务器
smtpObj.sendmail(sender, receiver, msg.as_string()) # 发送邮件
print("邮件发送成功")
except smtplib.SMTPException:
print("邮件发送失败")
# 使用示例
sender = 'sender@example.com' # 发件人邮箱
password = 'password' # 发件人邮箱密码
receiver = 'receiver@example.com' # 收件人邮箱
subject = '这是一封测试邮件' # 邮件主题
content = '你好,这是一封使用Python发送的测试邮件。' # 邮件内容
send_email(sender, password, receiver, subject, content)
```
请根据实际情况将`smtp_server`、`smtp_port`、`sender`、`password`、`receiver`、`subject`和`content`替换为你自己的值。该脚本使用了smtplib库和email库来发送纯文本邮件。
### 回答3:
当然可以,以下是一个简单的Python 3脚本,用于发送邮件:
```python
import smtplib
from email.mime.text import MIMEText
def send_email(sender, receiver, subject, message, smtp_server, smtp_port, username, password):
# 创建邮件内容
msg = MIMEText(message)
msg['Subject'] = subject
msg['From'] = sender
msg['To'] = receiver
try:
# 连接SMTP服务器
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls()
# 登录邮箱
server.login(username, password)
# 发送邮件
server.sendmail(sender, receiver, msg.as_string())
# 关闭连接
server.quit()
print("邮件发送成功!")
except Exception as e:
print("发送邮件时出错:", str(e))
# 设置发件人、收件人、主题、内容等信息
sender = "your_email@example.com"
receiver = "recipient@example.com"
subject = "测试邮件"
message = "这是一封测试邮件!"
smtp_server = "smtp.example.com"
smtp_port = 25
username = "your_username"
password = "your_password"
# 调用发送邮件函数
send_email(sender, receiver, subject, message, smtp_server, smtp_port, username, password)
```
请注意,你需要将 `your_email@example.com`、`recipient@example.com`、`smtp.example.com`、`your_username` 和 `your_password` 替换为你自己的邮箱、SMTP服务器及登录凭据。同时确保你的计算机已经安装了 `smtplib` 和 `email` 库。这个脚本简单地发送了一封包含文本内容的测试邮件。你可以根据自己的需要进行修改和扩展。
阅读全文