写一个Python发送邮件
时间: 2023-09-13 10:05:22 浏览: 106
python发送邮件
5星 · 资源好评率100%
### 回答1:
我可以给你一个简单的Python脚本来发送邮件:import smtplib
# 配置SMTP服务器
sender_email = "sender@example.com"
password = input("Type your password and press enter: ") # 创建SMTP对象
server = smtplib.SMTP('smtp.example.com', 587)
server.starttls() # 登录邮箱
server.login(sender_email, password) # 输入收件人邮箱
receiver_email = input("Type the receiver email and press enter: ") # 输入邮件内容
message = input("Type the content of the email and press enter: ") # 发送邮件
server.sendmail(sender_email, receiver_email, message) # 关闭SMTP连接
server.quit()
### 回答2:
发送邮件的Python代码示例如下:
```python
import smtplib
from email.mime.text import MIMEText
from email.header import Header
def send_email():
# 邮件服务器配置
mail_host = "smtp.example.com" # 邮件服务器地址
mail_port = 25 # 邮件服务器端口
mail_user = "your@example.com" # 发件人邮箱
mail_password = "your_password" # 发件人邮箱密码
# 收件人邮箱
receivers = ["recipient1@example.com", "recipient2@example.com"]
# 邮件内容
message = MIMEText("邮件正文内容", "plain", "utf-8") # 邮件正文
message["Subject"] = Header("邮件标题", "utf-8") # 邮件标题
message["From"] = Header(mail_user) # 发件人
message["To"] = Header(",".join(receivers)) # 收件人
try:
# 发送邮件
smtpObj = smtplib.SMTP()
smtpObj.connect(mail_host, mail_port)
smtpObj.login(mail_user, mail_password)
smtpObj.sendmail(mail_user, receivers, message.as_string())
smtpObj.quit()
print("邮件发送成功")
except smtplib.SMTPException as e:
print("邮件发送失败:" + str(e))
if __name__ == "__main__":
send_email()
```
以上代码使用`smtplib`和`email`模块实现了一个简单的邮件发送功能。首先,需要根据实际的邮件服务器配置填写`mail_host`、`mail_port`、`mail_user`和`mail_password`等信息。然后,指定收件人邮箱地址,并创建邮件的正文内容和标题。最后,通过`SMTP`对象连接邮件服务器,并使用发件人邮箱和密码进行登录验证。发送邮件时,需要指定发件人、收件人和邮件内容,并调用`sendmail`方法发送邮件。异常处理部分用于捕获发送邮件过程中可能出现的异常,并打印相应的错误信息。
### 回答3:
要写一个Python发送邮件的程序,可以使用Python内置的smtplib库和email库。
首先,需要导入这两个库:
```python
import smtplib
from email.mime.text import MIMEText
```
然后,根据需要设置发件人、收件人、主题和正文等信息:
```python
sender = '发件人邮箱'
password = '发件人邮箱密码'
receivers = ['收件人邮箱1', '收件人邮箱2']
subject = '邮件主题'
content = '邮件正文'
```
接下来,创建一个MIMEText对象,并设置相关的字段:
```python
message = MIMEText(content, 'plain', 'utf-8')
message['From'] = sender
message['To'] = ', '.join(receivers)
message['Subject'] = subject
```
然后,使用smtplib库进行邮件发送:
```python
try:
server = smtplib.SMTP('SMTP服务器地址', 25) # 例如,使用QQ邮箱的SMTP服务器地址为:smtp.qq.com
server.login(sender, password)
server.sendmail(sender, receivers, message.as_string())
print('邮件发送成功')
except smtplib.SMTPException as e:
print('邮件发送失败:', e)
finally:
server.quit()
```
以上就是用Python发送邮件的基本步骤。需要注意的是,发件人的邮箱需要开启SMTP服务,并且在密码处填上授权码。
希望这个回答对你有帮助!
阅读全文