今天我们不讨论具体技术,而是聊聊如何将重复性事务自动化。
话题可能较为宽泛,若有不准确或片面之处,欢迎大家批评指正。
背景
我们公司使用某第三方系统有一个自定义的数据看板,每天需要向群里发送日报。之前,这项工作由团队成员轮流手动完成:从系统复制数据到 Excel,再将表格转为图片,发到群里。
轮到我负责的那一周,我左手边电脑打开系统,右手边打开 Excel,一个个数据复制过去,3.4%、-10%......为避免出错,还要逐一核对。整个过程每天耗时大约 7 到 10 分钟,繁琐又枯燥。
我开始思考:这种重复性工作能不能自动化?
于是,我在群里向大佬们请教,提出了这个问题:

结果,消息已读,全员沉默,没有一个人回复。
那一刻,我暗下决心:我要自己解决这个问题!
在业余时间,经过不懈努力和多次失败,我终于取得了突破:

第一阶段,我开发了一个半自动脚本,不用复制了,只需手动执行脚本,大大简化了操作流程。
后来,我进一步优化,实现了全自动化。现在,脚本已部署到服务器,每天早晨定时运行,自动生成报表并发送到群里。

这项改进为我们前端部门带来了显著效益。假设每天节省 10 分钟,一年 250 个工作日(每天按 8 小时计算),累计节省了超过 5 天的工作时间!
更重要的是,这提升了团队效率,让我们能将时间投入到更有价值的工作中,而不是浪费在重复性劳动上。

通过这件事,我深刻体会到:当我们频繁处理重复性任务时,不妨尝试借助工具实现自动化。这不仅能节省时间,还能让我们专注于更有创造性的工作。
目的
通过自动化重复任务,我们的目标是:
- 提升效率:让研发们有更多时间搞有意义的事儿。
- 减少错误:自动化干活,告别手动出错。
- 优化流程:把繁琐的重复工作变得高效又省心。
结论:重复性任务,绝对可以自动化搞定!
发现问题
首先得有一双发现问题的眼睛。
开发中要是觉得哪块儿老得手动复制、粘贴、来回重复操作的啥的,就该想想咋用工具来解放双手。
解决思路
- 写个脚本:用 Python、JavaScript 啥的,搞个小工具自动干活。
- AI帮忙 :让 AI 来生成代码、处理数据,省时省力。 例如我想把数据转成数据对象。直接让ai来。
- 具体场景具体分析 看是什么问题,再看怎么解决。写脚本、浏览器插件等等
我知道要脚本,可我不会写怎么办?
学呗,学会了通过做这件事,也是提升综合能力。
如果团队里有人会,那就让他来做。
如果是前端同学,适当学习和了解后端知识很有必要。否则,后端对你来说就像一个黑盒,有时候可能会限制你的思维。
如果一个人解决所有,那么我觉得就需要你的综合能力Ok,前后端、服务器知识,浏览器插件,js逆向等等。
拆解任务
面对复杂任务,拆解成小而具体的子任务是关键。拆解后,每步更可控,逐步攻克解决整体问题。
以"我这次的爬数据生成日报发送到钉钉群"为例的任务拆解:
- 自动获取日报数据:从神策系统获取数据。
- 数据处理:整理数据为目标格式(如图片或表格)。
- 发送到钉钉群:通过钉钉 API 或机器人发送图片或数据。
- 定时执行:设置脚本每天固定时间运行。
分步实现
1. 自动获取日报数据
- 方法:研究神策系统 API 或导出功能,用nodejs脚本编写脚本爬虫抓取数据。
- 挑战:需处理加密的登录认证实现自动化登录、数据结构解析。
- 解决方案:通过js逆向获取登录加密方法,模拟登录获取数据上
2. 数据处理
- 方法:研究目标页面显示的数据是接口里的那个字段。
- 挑战:确保数据准确,格式符合需求。
- 解决方案:编写脚本转换数据为图片,并验证格式。
3. 发送到钉钉群
- 方法:用钉钉 Webhook 或 API 发送消息或图片。
- 挑战:配置机器人,处理消息格式。
- 解决方案:参考钉钉文档,测试发送逻辑,确保可靠送达。
4. 定时执行
- 方法 :用服务器定时任务工具(如 Linux
cron
或 nodeschedule
)定时运行。 - 挑战:确保服务器环境稳定,脚本无异常。
- 解决方案:docker部署脚本,设置日志监控,定期检查。
一定要完全自动化吗?
我觉得是不一定,迫于技术、场景等等限制,有时候不能做到完全自动化,那就半自动化,即使部分需要手动,那也是提高了效率的,这件事也是有意义的。
总结
通过自动化重复任务,我们节省时间,提高效率和准确性。从手动到半自动化,再到全自动化部署,我深刻体会到:
- 发现机会:重复性任务是自动化的最佳切入点。
- 拆解问题:将复杂任务分解为小步骤,逐一解决。
- 持续优化:从半自动化到全自动化,逐步完善。
自动化不仅是技术实践,更是一种思维方式。发现重复劳动时,思考:能否用工具解放双手? 通过脚本、AI 或现有工具,我们让重复任务更高效,团队有更多时间创新和创造。
如果小伙伴们想看我具体怎么做的? 点点赞, 我再写一篇讲从爬取数据、逆向加密的登录到发到钉钉群一下技术细节。