影刀RPA新手教程钉钉办公自动化完全指南——考勤打卡审批发起与消息批量发送作者林焱案例主线小陈的钉钉日常自动化小陈是某公司的行政助理每天要在钉钉上完成考勤统计、审批处理、群消息发送等重复性工作每天耗时3小时。本教程用影刀RPA搭建钉钉办公自动化系统让小陈从重复劳动中解放出来。一、认识影刀与安装配置影刀RPA是零代码自动化工具支持网页自动化、桌面软件自动化、Excel处理等核心能力特别适合钉钉等办公场景的自动化需求。钉钉环境准备钉钉办公自动化有两种实现路径一是通过钉钉网页版操作二是调用钉钉开放平台API。本教程采用网页版路径无需申请应用权限上手更快。使用Chrome浏览器访问钉钉网页版登录后进入工作台。在影刀设置中将默认浏览器设置为Chrome并开启自动携带登录态。安装注意事项安装影刀时路径必须为纯英文例如C:\YingdaoRPA\。安装完成后需要重启电脑确保浏览器插件正确加载。首次打开影刀时按照向导完成设备激活。二、元素定位四合一钉钉网页版使用React框架元素ID动态生成需要四种定位方式组合使用。1. 智能匹配钉钉工作台中的审批、“考勤”、“消息等主导航按钮相对稳定优先使用智能匹配。捕获后勾选动态ID忽略”影刀会自动过滤随机字符串部分。2. XPath定位动态ID无法定位时使用XPath。钉钉的列表项通常使用data-*属性可以按data-属性定位//div[data-approval-id123456] //li[data-typeapproval]钉钉常用XPath语法//div[contains(class,approve)]模糊匹配类名//span[text()审批通过]按文字定位//div[rolebutton]按ARIA角色定位3. CSS选择器钉钉使用Ant Design组件库生成的class包含next-或ant-前缀button.next-btn-primary span.anticon-check-circle4. 图像识别钉钉的某些图标按钮没有文字只有图标无法按文字定位。截取图标截图使用点击图像指令设置相似度0.85。实战定位审批状态标签审批列表中的状态标签审批中/已通过/已拒绝使用不同颜色区分。正确做法是获取标签元素的style属性或class属性判断是否包含success、process、reject关键词。店群矩阵自动化突破运营极限三、变量与数据类型小陈的考勤数据需要从钉钉后台导出然后按部门统计。数据表操作使用启动Excel指令创建考勤统计表字段包括员工姓名、部门、日期、上班打卡时间、下班打卡时间、工时、异常状态。使用读取Excel内容指令读取已有数据数据类型为数据表。JSON数据处理钉钉API返回的数据是JSON格式。使用解析JSON指令将响应解析为字典。访问嵌套字段语法response[data][record_list][0][check_time]。日期时间处理使用获取当前时间指令获取当前日期格式设置为YYYY-MM-DD。计算两个时间点之间的工时使用计算时间差指令结果单位为小时保留2位小数。四、流程控制多条件判断审批处理需要根据审批类型和状态执行不同操作。使用开关指令开关 审批类型 情况 请假: 执行请假审批流程 情况 报销: 执行报销审批流程 情况 加班: 执行加班审批流程 默认: 转发给对应负责人 结束开关循环遍历考勤异常记录需要逐条处理。使用循环Excel内容指令遍历考勤表对每条异常记录执行获取员工信息、发送提醒消息、记录处理结果。异常重试网络波动会导致钉钉页面加载失败。使用尝试捕获错误指令包裹页面操作捕获超时异常后等待3秒重试最多重试3次。五、网页自动化——考勤打卡监控登录态保持钉钉网页版登录后Cookie有效期为7天。使用获取浏览器Cookie指令保存登录态到本地文件。每次运行前用设置浏览器Cookie指令注入。Cookie保存路径C:\yingdao_workspace\dingtalk\cookies.json考勤数据抓取进入钉钉管理后台-考勤打卡-考勤统计页面。使用循环网页相似元素指令遍历考勤记录列表对每条记录使用获取网页元素内容指令读取员工姓名、打卡日期、上班时间、下班时间、打卡状态。异常打卡判断正常打卡时间应为9:00前上班、18:00后下班。使用如果…否则指令判断如果 上班时间 09:00:00 设置 异常状态 迟到 否则如果 下班时间 18:00:00 设置 异常状态 早退 否则 设置 异常状态 正常 结束如果六、数据处理工时计算使用计算时间差指令计算下班时间减去上班时间得到当日工时。注意扣除午休时间1.5小时当日工时 (下班时间 - 上班时间) - 1.5考勤统计汇总使用计算数据表统计值指令按部门分组统计总人数、正常人数、迟到人数、早退人数、缺勤人数。统计结果写入汇总表。Excel报表生成每日考勤报表使用写入Excel内容指令生成。在报表中按部门分Sheet展示每个Sheet包含员工列表、打卡明细、异常统计。使用设置单元格格式指令将异常单元格标红。七、鼠标键盘图像自动化处理钉钉弹窗钉钉网页版偶尔弹出版本更新提示或评价邀请弹窗。使用按键盘按键指令发送Esc键关闭弹窗。在关键操作前先发送一次Esc。截图取证考勤异常需要截图留证。使用网页截图指令截取整个考勤记录页面保存路径为C:\yingdao_workspace\dingtalk\screenshots\YYYYMMDD\。文件名格式员工姓名_日期.png。图像识别点击钉钉的发起审批按钮有时是Canvas绘制的图标无法用常规方式定位。截取按钮图片使用点击图像指令设置相似度0.8。八、进阶技能定时触发小陈希望每天上午8:30自动检查昨日考勤异常。在影刀计划任务中新建定时任务触发方式选择每日定时时间设置为08:30。多部门处理公司有多个部门需要分别统计。在Excel配置表中列出所有部门名称使用循环Excel内容指令遍历部门列表每次切换部门筛选条件并处理。企业微信通知考勤异常确认后使用发送企业微信消息指令向部门经理发送异常清单。消息内容包含部门名称、异常人数、异常明细表Excel附件。九、平台实战——审批自动处理审批列表抓取进入钉钉工作台-审批-我发起的页面。使用获取网页元素内容指令循环读取审批列表审批标题、审批类型、发起时间、当前状态、审批人。自动通过审批对于特定类型的审批如日常报销金额小于200元可以自动点击通过按钮。使用点击元素指令在审批详情页面点击通过然后在确认弹窗中点击确定。审批催办temu店群自动化报活动案例超时未处理的审批需要催办。使用获取当前时间指令和计算时间差指令判断审批发起时间距现在是否超过24小时超过则点击催办按钮。十、系统联动Excel考勤月报每月1号自动生成上月考勤月报。使用写入Excel内容指令在月报表中写入员工姓名、应出勤天数、实际出勤天数、迟到次数、早退次数、旷工天数、总工时。邮件推送考勤月报生成后使用发送邮件指令将Excel作为附件发送给HR部门。邮件主题格式【考勤月报】YYYY年MM月正文简要说明异常情况。飞书多维表格同步如果公司使用飞书可以将考勤数据同步到飞书多维表格。使用影刀的飞书指令在数据表中追加记录字段包含日期、员工、考勤状态、工时。十一、工程化与规范应用结构规范规范应用结构初始化区读取配置、校验登录态、主业务区考勤处理、审批处理、消息发送、异常处理区错误捕获与记录、收尾区生成报表、发送通知。变量命名规范全局变量前缀g_g_cookie_path循环变量前缀loop_loop_employee临时变量小写下划线temp_time配置外部化钉钉账号、部门列表、通知邮箱等配置信息存储在外部INI文件中不硬编码在应用内。使用读取配置文件指令读取配置。十二、速查表与常见报错常见报错速查报错信息原因解决方法TimeoutException页面加载超时增加等待时间至15秒ElementNotVisibleException元素不可见先滚动页面使元素进入视口Cookie失效登录态过期重新手动登录并更新Cookie权限不足账号权限不够联系管理员开通相应权限元素被遮挡弹窗或遮罩层遮挡先按Esc关闭弹窗钉钉元素定位速查# 审批按钮 //button[contains(class,approve-btn)] # 按文字定位 //span[text()发起审批] //div[text()考勤统计] # 按data属性定位 //div[data-approval-statusrunning] # Ant Design组件 //button[contains(class,ant-btn-primary)]/* Ant Design样式 */.ant-btn-primary/* 主要按钮 */.ant-table-row/* 表格行 */.ant-tag-green/* 成功标签 *//* Next UI样式钉钉新版*/.next-btn-primary .next-table-row调试技巧在循环网页相似元素内打断点会导致每次循环都暂停。建议将断点打在循环外部通过调试变量面板查看循环变量的当前值。如果必须调试循环内部设置一个调试标志变量只在调试模式下暂停。总结通过本文搭建的钉钉办公自动化系统小陈每天3小时的重复工作压缩到15分钟。系统自动完成考勤监控、审批处理、消息发送异常情况才需要人工介入。影刀RPA让普通上班族也能拥有技术团队的自动化能力把时间用在更有价值的工作上。#影刀RPA #RPA教程 #钉钉自动化 #办公自动化 #考勤统计作者林焱