传统浏览器自动化的第一步,通常是打开开发者工具,在一大串 HTML 里找到那个输入框的 ID 或 CSS 类名。代码还没开始写,时间已经花在读懂 DOM 上,而且只要前端改一次版,选择器可能就得重新维护。

Vibium 的思路正好相反。它不要求你先摸清页面结构,而是让你像用遥控器一样,直接通过“发现 → 引用 → 操作”三步完成交互。

核心流程:先发现,再用 @引用 直接操作

用这个工具时,工作流被精简为三个清晰的阶段:

  • 打开页面:告诉它目标网址,浏览器会自动拉起,不需要额外配置 WebDriver。
  • 发现元素:通过 find 命令定位输入框、按钮等交互元素。它用的不是单一选择器,而是一组语义信号——文本内容、label 标签、placeholder 属性、test ID,甚至无障碍树。你只要告诉它“找到写着‘用户名’的输入框”,它就能把目标锁定。
  • 用临时引用操作:找到元素后,系统会返回一个类似 @e1 的临时引用。接下来不管是填表单还是点按钮,都可以直接用这个引用,一次刷新内始终有效。

这种模式把“提前读懂 DOM”从硬性门槛降成了可选项,你甚至可以在完全不了解页面结构的情况下,完成一次完整的操作流程。

一条命令完成安装

环境搭建也极其克制,只有一个 npm 全局包:

npm install -g vibium

首次运行浏览器相关命令时,它会自动下载一个经过测试优化的 Chrome 版本,无需单独安装 ChromeDriver 或折腾二进制依赖。

一个真实登录的例子

以 OrangeHRM 的公开演示站为例,目标是用管理员账号登录。传统方式需要先写脚本,调试选择器,再填入用户名、密码,点击登录。而用这个工具,整个过程变成了一串按步骤执行的指令,每一步都像在写操作手册:

记录开始打开目标站发现用户名输入框 → 返回 @e1发现密码输入框 → 返回 @e2发现登录按钮 → 返回 @e3用 fill 命令填入:fill "@e1" "Admin"fill "@e2" "admin123"最后 click "@e3"

整个过程不需要提前查看任何一句 HTML,所有的定位和操作都通过语义发现和临时引用完成。即使将来页面改版,只要按钮上还写着“登录”、输入框的标签仍然是“用户名”,这套命令就依然有效,维护成本远低于硬编码的选择器。