SB

Playwright Steps Builder 扣子IDE插件

把简单输入生成 actions DSL,用于自动化执行

📋 插件概述

将简单输入(跳转、等待、点击、填写、是否截图)自动拼装为 Playwright 自动化的 actions 文本(DSL)。本插件只“生成步骤字符串”,不直接控制浏览器;可与执行/截图类插件配合使用。

🎯 核心功能

  • 步骤生成:固定顺序 navigate → wait → click → fill → screenshot
  • 智能默认:提供 navigateUrl 且未传 waitMs 时自动插入 wait 500
  • 简洁输入:用少量字段快速拼装多步动作

🔧 输入参数说明

必需参数

参数名类型说明示例
(无)-所有参数均为可选;但至少提供一个动作字段,否则不会生成步骤-

可选基础参数

参数名类型默认值说明
navigateUrlstring-导航 URL;如提供且未传 waitMs,会自动加 wait 500
waitMsinteger-显式等待毫秒数(>0 生效)
clickSelectorstring-点击的选择器(支持 text=xxx、CSS/XPath 等)
fillSelectorstring-填写的选择器(与 fillValue 搭配)
fillValuestring-填写的文本内容(与 fillSelector 搭配)
screenshotbooleanfalse是否在末尾追加 screenshot 动作

📤 输出结果

{
  "success": true,
  "message": "OK",
  "result_data": {
    "actions": "navigate https://example.com\nwait 500\nclick text=More information\nfill input[name=email]|test@example.com\nscreenshot",
    "steps_count": 5
  },
  "task_id": "",
  "metadata": { "order": "navigate→wait→click→fill→screenshot" }
}

返回的 result_data.actions 为多行 DSL 字符串(以 \n 分行)。

示例1:仅导航(自动等待)

{
  "navigateUrl": "https://example.com"
}
navigate https://example.com
wait 500

示例2:点击 + 截图

{
  "clickSelector": "text=More information",
  "screenshot": true
}
click text=More information
screenshot

示例3:导航 + 显式等待 + 填写

{
  "navigateUrl": "https://example.com/login",
  "waitMs": 800,
  "fillSelector": "input[name=email]",
  "fillValue": "test@example.com"
}
navigate https://example.com/login
wait 800
fill input[name=email]|test@example.com

示例4:导航 + 自动等待 + 点击 + 截图

{
  "navigateUrl": "https://example.com",
  "clickSelector": "text=More information",
  "screenshot": true
}
navigate https://example.com
wait 500
click text=More information
screenshot

示例5:仅等待

{ "waitMs": 1000 }
wait 1000

示例6:全字段(显式 wait 覆盖自动 wait)

{
  "navigateUrl": "https://example.com/login",
  "waitMs": 1200,
  "clickSelector": "text=Sign in",
  "fillSelector": "input[name=email]",
  "fillValue": "user@example.com",
  "screenshot": true
}
navigate https://example.com/login
wait 1200
click text=Sign in
fill input[name=email]|user@example.com
screenshot

🔄 插件工作流程

A 读取输入 → B 规范化与默认处理 → C 按固定顺序拼装步骤 → D 返回 actions 字符串
  • A:读取可选字段(navigateUrl/waitMs/clickSelector/fillSelector/fillValue/screenshot)
  • B:若有 navigateUrl 且无 waitMs,则设置 500;清理引号
  • C:按固定顺序依次追加可用动作
  • D:以 \n 连接为 DSL 文本并返回

⚠️ 重要说明

  • 至少提供一个动作字段,否则不会生成任何步骤。
  • fill 必须同时提供 fillSelectorfillValue 才会生成。
  • 本插件只生成步骤文本,执行需交由相应的执行/截图服务。

FAQ 常见问题

  • 为空输出?请至少提供一个动作字段(如 navigateUrl/waitMs/clickSelector/fillSelector+fillValue/screenshot)。
  • 点击或填写失败(执行端)?检查选择器是否可定位,必要时增加 waitMs(如 800~2000)。
  • 想用一行 DSL?可按 \n 分割重组,或在执行端支持多行文本。