首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >我用 AI 自动化了医院安防日报:一个非技术人员的实战复盘

我用 AI 自动化了医院安防日报:一个非技术人员的实战复盘

原创
作者头像
用户12503643
修改2026-05-21 16:06:24
修改2026-05-21 16:06:24
1940
举报

> 写在前面:我是一名医院安全保卫部的普通工作者,不是程序员。但过去一周,我借助 AI 工具从零搭建了一套完整的日报自动化系统。这篇文章记录了这个过程,希望能给同样「非技术但想用好 AI」的朋友一些启发。

---

一、为什么要做这件事?

我在医院安全保卫部工作,每天需要整理安防日报——统计门诊安检人次、住院安检人次、消防火警次数、车辆管理、违禁品收缴等十几类数据。

这些数据存在**腾讯文档智能表格**里,每天手动汇总、排版、生成 PDF,少说也得花半小时。更头疼的是:

- 要从几十个字段里找到正确的数据列(字段名带编号前缀,比如"8.门诊安检人次")

- 有些数据要配上现场照片

- 还要生成 15 天趋势折线图

- 最后导出两种格式(电脑端 + 手机端),给不同的人看

一周前我决定:**让 AI 把这事干了**

---

二、技术栈:一个人 + 一个 AI

整个过程我没有写一行专业代码。所有的脚本、配置、调试,都由 AI 助理(WorkBuddy)完成。我负责的是:**描述需求、发现问题、给反馈、迭代优化**

最终的技术方案:

| 数据源 | 腾讯文档智能表格 | 通过 API 读取每日安防数据 |

| 图表 | Python 生成纯 SVG | 15 天安检人次 & 火警趋势折线图 |

| 照片 | 腾讯文档 API + base64 | 现场照片嵌入 HTML,无需外部文件 |

| 排版 | HTML + CSS | 现代卡片式布局,emoji 图标,彩色分区 |

| PDF | Edge CDP + Playwright | 不分页单页输出,电脑端+手机端双版本 |

| 定时 | WorkBuddy Automation | 每天定时自动执行 |

---

三、踩过的坑(重点)

坑 1:字段名不是你以为的那样

智能表格的 API 返回的字段名不是"门诊安检人次",而是 **"8.门诊安检人次"**——前面有个编号。直接用直觉去匹配字段名,全部报 KeyError。

解决:先调用 `list_fields` API 拿到真实的字段名列表,再用编号前缀去匹配。这个教训花了我两天时间。

坑 2:emoji 在 Python 里会炸

HTML 模板里放了很多 emoji(🏥 🔥 🚗),Python 字符串处理时报 `UnicodeEncodeError: surrogates not allowed`。原因是 emoji 在 Python f-string 里会产生代理对。

解决:全部改用 HTML 实体(`🏥` 代替 🏥),在代码里用字典变量引用。同时加了个兜底的 `clean_surrogates()` 函数。

坑 3:照片字段总是空的

明明智能表格里有照片,API 查到就是没数据。

解决:两个关键点——(1)必须用 `record_ids` 精确指定记录,不能用 `limit/offset` 模糊查询;(2)下载照片时必须带 `Referer: https://docs.qq.com/` 请求头,否则 CDN 返回 403。

坑 4:PDF 怎么都不对

一开始用 ReportLab 生成 PDF,样式和 HTML 差太远。后来改用 `page.pdf()` 方法,又遇到分页、报错 `"Failed to parse parameter value"` 等问题。

最终方案:启动 Edge 浏览器的 headless 模式,用 Playwright 通过 CDP 协议连接,用 `width="1200px"` + `height="XXXpx"`(注意是 px 不是 pt!)设置页面尺寸,打印背景色。这样就得到了和 HTML 一模一样、不分页的单页 PDF。

坑 5:手机端字体太小

PDF 拿到手机上,字小得根本看不清——尤其我们有些领导年纪大了,眼睛花。

解决:生成两套版本。电脑端用 11-13px 的字号;手机端统一放大——正文 24px、标签 23px、数据大字 32px。生成逻辑是:先做电脑端 HTML,再对字号做字符串替换生成手机端版本。效果立竿见影,老年人也能看清了。

---

四、现在它能做什么?

每天定时执行,无需任何人工操作:

1. 📊 **自动拉取数据**:从腾讯文档智能表格读取前一天的所有安防数据

2. 📈 **生成趋势图**:15 天安检人次折线图 + 15 天火警次数折线图(纯 SVG,数据点标注数值)

3. 📷 **嵌入现场照片**:自动下载巡逻、维修、宣教等场景照片,base64 嵌入日报

4. 🎨 **现代卡片布局**:深色头部 + 盾牌徽章 + 8 张数据概览卡片 + 彩色分区详情

5. 📄 **一次生成 4 个文件**

- 电脑端 HTML(1200px 宽)

- 电脑端 PDF

- 手机端 HTML(1000px 宽,大字体)

- 手机端 PDF

最终文件命名如:`河南省肿瘤医院安防日报_2026年5月19日_电脑端.html`

---

五、迭代优化的心得

这一周最大的收获不是"自动化做成了",而是**学会了怎么跟 AI 协作**

1. 描述,而不是命令

最开始我说"生成一个好看的日报",结果出来和预期差距很大。后来我发现,要给 AI 看**你心目中的样子**——告诉它"卡片式布局、深色头部、彩色左边框、emoji 图标",它就能做对。

2. 细粒度反馈

排版不满意的时候,不要说"再好看一点",而是:

- "统计标注的字号从 10px 改成 11px"

- "数据卡片的圆角从 12px 改成 16px"

- "两个折线图不要并排,上下堆叠"

给具体数值,AI 就能精准执行。

3. 把经验沉淀到提示词

每解决一个问题,我都让 AI 把解决方案写进自动化提示词里。现在的提示词已经积累了十几个关键规则——字段名匹配、emoji 处理、照片提取、PDF 参数、CSS 打印兼容……每次执行都会自动遵守这些规则,不会反复踩坑。

4. 接受"不完美迭代"

第一版很丑,第二版好了一点,第三版才像样。到第五六版的时候,AI 的审美突然就对了——它会自己调整配色、优化间距、增加细节。这个过程急不得。

---

六、一个普通人的感受

说实话,一周前我认为"写代码让 AI 自动做报表"是程序员才能做的事。

但实际体验是:**AI 不在乎你是不是程序员**。它在乎的是你能不能把需求说清楚、能不能发现问题、能不能给出具体的改进方向。

这个过程中,我没有写过一行代码。但我学会了:

- 什么是 API、什么是 base64

- 代理对(surrogate pairs)是什么鬼

- CDP 协议和 Playwright 是干嘛的

- CSS 的 @media print 有多重要

这些不是提前学的,是做的时候自然就明白了。

---

七、下一步

系统已经稳定运行,但还有几个方向想探索:

- 📱 对接企业微信,日报自动推送到群里

- ☁️ 迁移到云服务器,实现真正的 7×24 无人值守

- 📊 增加周报和月报的自动汇总

- 🚨 异常数据自动预警(比如某天火警次数突增)

如果你也在用 AI 做类似的自动化,或者有更好的实现思路,欢迎交流!

---

*作者:元吉 | 工具:WorkBuddy AI | 2026 年 5 月*

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、为什么要做这件事?
  • 二、技术栈:一个人 + 一个 AI
  • 三、踩过的坑(重点)
    • 坑 1:字段名不是你以为的那样
    • 坑 2:emoji 在 Python 里会炸
    • 坑 3:照片字段总是空的
    • 坑 4:PDF 怎么都不对
    • 坑 5:手机端字体太小
  • 四、现在它能做什么?
  • 五、迭代优化的心得
    • 1. 描述,而不是命令
    • 2. 细粒度反馈
    • 3. 把经验沉淀到提示词
    • 4. 接受"不完美迭代"
  • 六、一个普通人的感受
  • 七、下一步
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档