要使用Python自动发送QQ邮件,需要先在QQ邮箱中开启SMTP服务,并获取授权码。
以下是一个使用Python发送QQ邮件的示例代码:
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
# 设置发件人、收件人、主题和内容
from_address = 'your_qq_email_address'
password = 'your_auth_code'
to_address = 'recipient_email_address'
subject = '邮件主题'
body = '邮件内容'
# 创建邮件对象
msg = MIMEMultipart()
msg['From'] = from_address
msg['To'] = to_address
msg['Subject'] = subject
# 添加邮件正文
msg.attach(MIMEText(body, 'plain'))
# 发送邮件
try:
server = smtplib.SMTP('smtp.qq.com', 587)
server.starttls()
server.login(from_address, password)
server.sendmail(from_address, to_address, msg.as_string())
print('邮件发送成功!')
except Exception as e:
print('邮件发送失败:', e)
finally:
server.quit()
在代码中,需要将from_address
和password
分别替换为发件人的QQ邮箱地址和授权码,to_address
替换为收件人的邮箱地址,subject
和body
分别替换为邮件主题和内容。
代码使用了smtplib
和email
模块来发送邮件,其中SMTP
对象用来连接SMTP服务器,starttls()
方法用来启动安全连接,login()
方法用来进行身份验证,sendmail()
方法用来发送邮件。在发送邮件时,需要将邮件对象转换为字符串格式,并传递给sendmail()
方法。