分享一份python每天8点自动发送邮件的案例,需要搭建python环境的同学自己看一下之前的文档,首先需要安装两个扩展库 `smtplib`(这是 Python 的标准库)和 `schedule` 库,然后需要SMTP服务器的地址,可以自己搭建也可以使用各自网站的,需要到个人账号中查找。
创建schedule_daily_email.py文件粘贴以下内容
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import schedule
import time
# SMTP服务器的配置信息
SMTP_SERVER = 'smtp服务器地址'
SMTP_PORT = 587
SMTP_USERNAME = '你的邮箱'
SMTP_PASSWORD = '邮箱密码'
# 接收邮件的邮箱
TO_EMAIL = '接收人邮箱地址'
# 发件人的邮箱
FROM_EMAIL = SMTP_USERNAME
# 邮件内容
def create_email_content():
subject = "标题"
body = "内容。"
msg = MIMEMultipart()
msg['From'] = FROM_EMAIL
msg['To'] = TO_EMAIL
msg['Subject'] = subject
msg.attach(MIMEText(body, 'plain'))
return msg.as_string()
# 发送邮件
def send_email():
try:
server = smtplib.SMTP(SMTP_SERVER, SMTP_PORT)
server.starttls()
server.login(SMTP_USERNAME, SMTP_PASSWORD)
email_content = create_email_content()
server.sendmail(FROM_EMAIL, TO_EMAIL, email_content)
server.quit()
print("邮件发送成功")
except Exception as e:
print(f"发送邮件失败: {e}")
# 安排每天发送一次邮件
def schedule_daily_email():
schedule.every().day.at("08:00").do(send_email) # 在每天的上午8点发送邮件
while True:
schedule.run_pending()
time.sleep(1)
if __name__ == "__main__":
schedule_daily_email()
按照自己的内容,修改上方常量部分
然后再命令行运行python schedule_daily_email.py 即可每天8点自动发送邮件