Appearance
第 13 课:自动化日报系统
📌 学习目标:完成一个完整的自动化项目——每日工作汇报系统 ⏱️ 预计时长:30 分钟 🎯 本节节奏:需求分析 → 分步实现 → 部署运行
一、项目背景
假设你每天需要向领导汇报工作进展。以前你可能要:
- 打开多个文件查看进度
- 手动整理数据
- 写汇报邮件
- 发送出去
现在,我们用 Claude Code 自动化这个过程。
二、项目目标
创建一个自动化日报系统,每天自动:
- 读取项目进度数据
- 生成日报内容
- 发送邮件通知
三、分步实现
步骤 1:创建数据文件
帮我创建一个项目数据文件 projects.csv,
包含以下列:
项目名,负责人,进度(%),状态,截止时间,备注写入 5 条示例数据。
步骤 2:创建日报模板
帮我创建一个日报模板 report-template.md,
包含:
- 日期
- 今日完成
- 明日计划
- 风险事项
- 数据概览表格步骤 3:生成日报脚本
帮我写一个 Python 脚本 daily_report.py,
功能是:
1. 读取 projects.csv
2. 筛选进度为 100% 的项目(今日完成)
3. 筛选进度在 50%-99% 的项目(进行中)
4. 筛选超过截止日期的项目(风险事项)
5. 按照日报模板生成 Markdown 报告
6. 保存到 output/ 文件夹步骤 4:创建汇总脚本
帮我写一个 Python 脚本 summary.py,
功能是:
1. 读取本周所有日报
2. 生成周报摘要
3. 包含:本周完成率、主要进展、下周计划
4. 输出为 Markdown 格式步骤 5:创建邮件发送脚本
帮我写一个 Python 脚本 send_email.py,
功能是:
1. 读取生成的日报
2. 通过 SMTP 发送邮件
3. 主题:每日工作汇报 - {日期}
4. 正文包含日报内容四、完整工作流
每天早上 9 点:
1. daily_report.py 自动读取数据,生成日报
2. 日报保存到 output/daily/{日期}.md
3. send_email.py 自动发送邮件
4. 你收到邮件,查看日报五、扩展功能
5.1 添加图表
在日报中加入数据可视化图表,
用 Python 的 matplotlib 生成趋势图5.2 添加自动提醒
帮我创建一个提醒脚本,
对于即将到期(3 天内)的项目,
在日报中高亮显示5.3 设置定时任务
帮我创建一个定时任务,
每天上午 9 点自动执行日报生成和发送六、本节小结
| 知识点 | 核心内容 |
|---|---|
| 需求分析 | 先明确每天要做什么,再设计自动化方案 |
| 数据驱动 | 日报的核心是数据,先建好数据源 |
| 脚本分工 | 每个脚本只做一件事,便于维护 |
| 定时执行 | 用系统定时任务实现自动化 |