当前位置:首页python > 正文

编写一个Python脚本,用于自动发送每日电子邮件报告

作者:野牛程序员:2024-02-10 21:10:55python阅读 2767

以下是一个简单的Python脚本,用于自动发送每日电子邮件报告。该脚本使用SMTP协议发送电子邮件,并可以通过设置SMTP服务器的相关信息来发送邮件。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import datetime
 
def send_email():
    # 邮件服务器配置
    smtp_host = 'your_smtp_host'
    smtp_port = 587  # SMTP服务器端口号(通常为587)
    smtp_user = 'your_email_address'
    smtp_password = 'your_email_password'
 
    # 收件人和发件人信息
    sender_email = 'your_email_address'
    receiver_email = 'recipient_email_address'
 
    # 创建邮件内容
    message = MIMEMultipart()
    message['From'= sender_email
    message['To'= receiver_email
    message['Subject'= 'Daily Report - ' + str(datetime.date.today())
 
    # 邮件正文
    body = """
    在这里编写您的每日报告内容。
    """
    message.attach(MIMEText(body, 'plain'))
 
    # 建立SMTP连接并发送邮件
    try:
        server = smtplib.SMTP(smtp_host, smtp_port)
        server.starttls()
        server.login(smtp_user, smtp_password)
        text = message.as_string()
        server.sendmail(sender_email, receiver_email, text)
        server.quit()
        print("邮件发送成功!")
    except Exception as e:
        print("邮件发送失败:", e)
 
if __name__ == "__main__":
    send_email()

为了让该脚本正常工作,需要进行以下设置:

  1. 替换 your_smtp_hostyour_email_addressyour_email_passwordrecipient_email_address 为实际值。

  2. body 变量中编写想要包含在每日报告中的内容。

请确保邮箱已经启用了SMTP功能,并且提供了正确的SMTP服务器地址、端口号、用户名和密码。

此外,需要在邮箱提供商(如Gmail、Outlook等)中启用“不安全应用程序访问”或“应用密码”,以允许脚本通过SMTP发送邮件。

在运行脚本之前,确保计算机已经安装了Python,并且安装了所需的第三方库(例如smtplib)。

可以将这个脚本设置为每天定时运行,以便自动发送每日报告。可以使用操作系统提供的任务调度工具(如Windows任务计划程序、Linux的cron job)来定期运行该脚本。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击