一个自动发送每日电子邮件报告的 Python 脚本

要编写一个自动发送每日电子邮件报告的 Python 脚本,并设置它以每天运行,您可以按照以下步骤进行操作:

步骤 1:编写 Python 脚本
以下是一个示例 Python 脚本,使用 smtplib 和 email 模块发送电子邮件:

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from datetime import datetime

# 配置电子邮件参数
smtp_server = 'smtp.your-email-provider.com'  # 例如:smtp.gmail.com
smtp_port = 587  # 对于Gmail是587
smtp_user = 'your-email@example.com'
smtp_password = 'your-email-password'
from_email = 'your-email@example.com'
to_email = 'recipient@example.com'

# 生成每日报告内容
def generate_report():
    # 在这里生成您的报告内容
    report = f"每日报告 - {datetime.now().strftime('%Y-%m-%d')}\n\n这是一份每日自动发送的报告。"
    return report

# 发送电子邮件
def send_email(subject, body):
    msg = MIMEMultipart()
    msg['From'] = from_email
    msg['To'] = to_email
    msg['Subject'] = subject

    msg.attach(MIMEText(body, 'plain'))

    try:
        server = smtplib.SMTP(smtp_server, smtp_port)
        server.starttls()
        server.login(smtp_user, smtp_password)
        server.sendmail(from_email, to_email, msg.as_string())
        server.close()
        print('邮件发送成功')
    except Exception as e:
        print(f'发送邮件失败: {e}')

if __name__ == "__main__":
    report = generate_report()
    send_email('每日报告', report)

步骤 2:设置定时任务
要使这个脚本每天自动运行,可以在操作系统中设置一个定时任务:

在 Linux 上使用 Cron
1、打开终端并输入以下命令以编辑 crontab 文件:

crontab -e

2、添加以下行以每天运行该脚本(假设脚本路径为 /path/to/your/script.py):

0 8 * * * /usr/bin/python3 /path/to/your/script.py
这将每天早上 8 点运行脚本。确保 /usr/bin/python3 是 Python 3 的路径。

在 Windows 上使用任务计划程序
1、打开“任务计划程序”。

2、创建一个基本任务,并按照向导操作。

3、在“触发器”步骤中选择“每日”。

4、在“操作”步骤中选择“启动程序”,然后选择 python.exe 并在“添加参数”中输入脚本路径,例如:

"C:\Path\To\Your\script.py"

注意事项
1、安全性:不要将电子邮件密码硬编码在脚本中。可以使用环境变量或更安全的方式存储密码。
2、测试:在设置定时任务之前,请手动运行脚本以确保其工作正常。
3、依赖项:确保您的环境中安装了所需的 Python 模块,例如 smtplib 和 email。这些模块通常是标准库的一部分,无需额外安装。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值