用途:在浏览器中导航并提取 Dedalus 企业 Workday 租户(https://wd3.myworkday.com/dedalus/d/home.htmld)的数据,复用用户已登录的真实会话,实现查询休假与 RTT 余额、团队请假、审批、组织架构与报表等。
前置条件:需要 Node.js 与 playwright npm 包,安装命令为 npm install playwright;无需执行 npx playwright install,因为 connectOverCDP 连接的是用户已有浏览器,不会下载新浏览器。用户需在 Chromium 系浏览器(Chrome/Brave/Edge)中已通过 SSO 登录 Workday。
核心规则:绝不代替用户登录,不自动化登录页,不使用全新 --user-data-dir。元素选择优先使用稳定的 [data-automation-id="..."],而非生成的 class。租户界面为法语,操作前先截图并导出 data-automation-id 做侦察。默认只读,写入(提交表单、审批)必须经用户明确确认并先预览条目;不得持久化 PII。
连接方式:关闭用户浏览器,用相同 --user-data-dir 加 --remote-debugging-port=9222 重新启动,再通过 chromium.connectOverCDP(...) 附加并在新标签页打开 Workday。
导航:优先用全局搜索而非点菜单,输入任务名,如“Solde d'absences”“Absences de mon équipe”“Demander une absence”。
工作流:复用真实配置文件并附加 CDP,打开 Workday 确认首页加载;调用 assertAuthenticated(page),被跳转到 SSO 时由用户完成;截图并导出 data-automation-id;搜索目标任务;等待结果表格,按 data-automation-id 抓取(虚拟化表格回退到 <tr>),或用“Export to Excel”;返回结构化结果,按 ISO 周或日期聚合。
限制:租户固定为 dedalus,不得硬编码其它租户;收件箱为“Mes tâches”,URL .../d/inbox 会 404;团队请假数据不直接标记出勤,需结合花名册推算;团队报表需用户为人员经理;页面在 iframe 中时需先切换 frameLocator。