脆弱的浏览器自动化的终结已经到来
Source: Dev.to
传统自动化的问题
传统的自动化工具(Selenium、Playwright、Puppeteer)依赖于脆弱的选择器:
// This looks fine until the website updates
await page.click('#submit-button');
网站会变动。设计师会重构。公司会重新品牌。你精心编写的自动化脚本会在没有任何预警的情况下失效。
真正的问题在于?你在描述如何去做某件事,而不是想要完成什么。
新方法:SkillForge
如果不再针对具体的选择器,而是描述你想要的结果会怎样?
- 而不是:
Click element with ID "submit-btn" - 而是:
Click the primary submit button
SkillForge 从记录的会话中提取意图、工作流和上下文,并生成描述目标而非选择器的 SKILL.md 文件。任何 AI 代理都可以在不同框架下执行该技能。
传统自动化示例
await page.click('button[data-testid="login"]');
await page.fill('input[name="email"]', 'user@example.com');
// Breaks when data-testid changes
SkillForge 方法
- Authenticate
- Locate the “Sign In” button (primary CTA)
- Enter credentials in the login form
- Submit and wait for the dashboard
AI 会自行找出合适的选择器;你只需关注工作流本身。
好处
- ✅ UI 更新时不再出现脚本破损
- ✅ 领域专家无需编码即可创建自动化
- ✅ 技能可在不同框架之间迁移
- ✅ 人类可读的格式便于审查
- ✅ AI 驱动的执行能够适应界面变化
入门指南
我们已上线,期待你的支持:
准备好摆脱维护脆弱选择器的烦恼了吗?