S

ScriptCat 网页操作录制与批量自动化

Created 16 hours ago
Updated 16 hours ago
支持网页操作录制、规则分组、快速检索、多选批量执行、变量和跨页面自动化。
Statistics
Total Installs
4
Last 24h
+4
User Rating
-

ScriptCat 网页操作录制与批量自动化


📌 功能概览

可实现网页操作的可视化录制、规则分组管理、变量动态替换、跨页面批量自动化执行,适用于表单填报、数据采集、流程测试等重复操作场景,核心特性如下:

  • ✅ 双模式录制:简洁/详细两种录制模式,适配不同场景需求
  • ✅ 规则分组管理:支持自定义分组、模糊检索、批量操作
  • ✅ 强大变量系统:支持固定值、动态变量($i递增、日期、随机数等),支持批量传参覆盖
  • ✅ 智能批量执行:并发控制、心跳检测超时重试、验证码规则标签页自动保留
  • ✅ 完善日志系统:记录执行全流程,支持按级别过滤,便于问题排查
  • ✅ 便捷操作:悬浮快捷按钮、快捷键启停录制、油猴菜单快速调用

不要用来录制短信炸弹msgboom脚本!!!

🚀 快速上手

1. 开始录制

任选一种方式启动录制:

  • 快捷键:Alt + R(最常用)
  • 点击页面右下角悬浮按钮的红色「●」按钮
  • 点击 ScriptCat 菜单 → 「⏺ 开始/停止录制」

启动后页面顶部会出现红色录制指示器,此时你在页面的所有操作(点击、输入、滚动等)都会被自动记录。

2. 停止并保存规则

再次触发任意启动方式(比如再按一次Alt+R)停止录制:

  • 若开启了「静默保存」:规则会自动按预设模板命名保存,无弹窗打扰
  • 否则会弹出窗口让你填写规则名称、URL匹配规则、所属分组,确认后即可保存

3. 执行规则

  • 单规则执行:打开匹配规则的页面,点击悬浮按钮的「▶」按钮,或在ScriptCat菜单选择「▶ 执行当前页面匹配规则」
  • 批量执行:打开规则管理面板,勾选多个规则,点击「▶ 批量执行」,脚本会按设置的并发数自动启动多个标签页执行。

⚙️ 核心功能详解


一、录制功能

设置项 说明
录制模式 「简洁模式」:合并连续输入,仅保留最终值,适合常规表单场景;「详细模式」:记录每一次输入、按键、滚动,适合复杂交互调试
录制密码框 开启后可录制密码框的明文内容,默认关闭保障安全
文本框变量自动替换 开启后,录制结束会自动将输入框的内容替换为预设的变量占位符,无需手动修改
静默保存 开启后录制结束不弹窗确认,自动按「规则名称模板」生成规则名
规则名称模板 支持{title}(页面标题)、{seq}(自增序号)、{date}(日期)等占位符,自定义规则命名规则

💡 录制过程中切换页面,脚本会自动延续录制状态,无需重新启动。


二、规则管理

点击悬浮按钮的「⚙」按钮或ScriptCat菜单的「⚙ 管理规则、分组和批量任务」打开管理面板:

分组操作

  • 左侧分组栏可新建/重命名/删除分组,规则支持批量移动到目标分组
  • 内置分组:「全部规则」「当前页面匹配」「未分组」,方便快速筛选

规则操作

  • 检索:顶部搜索框支持按规则名、URL、分组、步骤内容模糊检索
  • 视图切换:支持列表/卡片两种视图,适配不同使用习惯
  • 批量操作:勾选规则后可批量执行、移动、复制、删除
  • 单规则操作:编辑步骤JSON、变量化输入、复制、删除等

三、变量系统

变量用于在规则执行时动态替换内容,默认格式为{变量名}(前后缀可在设置中自定义)。

1. 固定变量配置

在管理面板的「变量管理」页可配置固定变量,支持两种类型:

  • 固定值:比如phone: 13252208848,执行时所有{phone}都会替换为该值

  • 动态变量:支持以下语法:

    $i++          // 自增1,首次值为1
    $i(100,2)     // 从100开始,每次递增2
    $date         // 当前日期,默认格式YYYY-MM-DD,支持自定义如$date(YYYYMMDD)
    $time         // 当前时间,默认格式HH:mm:ss
    $datetime     // 完整日期时间
    $timestamp    // 13位毫秒时间戳
    $timestamp10  // 10位秒时间戳
    $uuid         // UUID字符串
    $random(8)    // 8位随机字母数字
    $digits(6)    // 6位随机数字
    $number(100,999) // 100-999之间的随机整数
    $pick(北京|上海|广州) // 从候选值中随机选一个
    

2. 变量优先级

批量执行时传入的变量 > 固定变量配置,方便同一规则适配不同数据集。

3. 规则变量化

编辑规则时点击「变量化」按钮,可将选中的输入步骤替换为变量占位符,无需手动修改JSON。


四、批量执行

批量执行是脚本的核心能力,支持两种模式:

1. 普通批量执行

  • 多选规则后点击「▶ 批量执行」,脚本会按设置的「并发数」同时启动多个标签页执行规则
  • 调度逻辑:采用槽位制,比如并发数设为5,就有5个槽位,每个槽位执行完一条规则后自动补充下一条,直到所有规则执行完成
  • 超时处理:子标签页每3秒上报一次心跳,超过30秒无心跳判定为超时,自动标记为失败并释放槽位
  • 验证码组特殊处理:若规则所属分组名称包含「验证码」,执行完成后不会关闭标签页,方便人工处理验证码,后续规则会继续执行
  • 任务控制:支持暂停/继续、停止整个批量任务、单独跳过某个槽位的任务(跳过后会保留标签页)

2. 数据批量执行

适用于单条规则需要填充多组数据的场景(比如批量填报100条表单):

  1. 选中规则点击「数据批量」按钮

  2. 输入JSON数组格式的数据集,示例:

    [
      {"username": "张三", "phone": "13800000000"},
      {"username": "李四", "phone": "13900000000", "__url": "https://example.com/form"}
    ]
    
  3. 每条数据中的字段会作为变量覆盖固定变量,__url为特殊字段,用于指定该条数据执行时的起始URL(不填则使用规则默认的起始URL)

  4. 脚本会按顺序逐条执行,直到所有数据处理完成


五、执行设置

在管理面板的「录制与执行设置」页可调整以下参数:

设置项 说明
步骤间隔 每一步执行后的等待时间,单位毫秒,避免操作过快被网站限制
元素等待超时 查找目标元素的最长等待时间,单位毫秒
单步执行超时 单步操作的最长执行时间,超时后自动跳过该步骤,避免任务卡死
批量执行并发数 同时打开的标签页数量,1~20之间,建议根据电脑性能调整
忽略URL查询参数 开启后判断页面匹配时忽略?后的参数,适合同路径不同参数的页面
滚动到目标元素 开启后执行操作前会先滚动到元素位置,避免元素被遮挡
屏蔽页面弹窗 开启后执行时自动拦截alert/confirm/prompt弹窗,返回默认值,避免任务卡住

六、日志系统

管理面板的「日志」页可查看所有执行记录,支持按级别(全部/错误/警告)过滤:

  • 日志包含规则名、步骤号、错误信息、页面URL等信息,方便排查执行失败的原因
  • 最多保留500条日志,旧日志会自动清理
  • 支持一键清空日志

七、数据导入导出

  • 导出:点击管理面板顶部的「导出」按钮,会下载包含所有规则、设置、变量计数器、分组的JSON备份文件
  • 导入:点击「导入」按钮,粘贴备份的JSON内容即可恢复所有数据,规则ID重复时会自动覆盖

⌨️ 快捷键与菜单命令

触发方式 命令 说明
Alt + R 启停录制 最常用的录制快捷键
ScriptCat菜单 ⏺ 开始/停止录制 同快捷键
ScriptCat菜单 ▶ 执行当前页面匹配规则 执行第一个匹配当前URL的规则
ScriptCat菜单 ⚙ 管理规则、分组和批量任务 打开管理面板
ScriptCat菜单 ■ 停止当前任务 停止正在执行的单规则/批量任务
ScriptCat菜单 ↺ 重置递增变量计数器 将所有$i类的递增变量归零
ScriptCat菜单 运行规则:XXX 快速执行指定规则,最多显示最近12条规则

❓ 常见问题(FAQ)

  1. 为什么有些网站的操作录不到? 受浏览器安全限制,以下场景无法录制/执行:
    • 网站设置了event.isTrusted校验,拒绝脚本模拟的事件
    • 跨域iframe(无权限访问跨域iframe的内容)
    • 已关闭的Shadow DOM
    • 文件上传操作(浏览器禁止脚本读取本地文件路径)
  2. 批量执行时打不开新标签页? 浏览器默认拦截非用户触发的弹窗,需要在浏览器设置中允许ScriptCat弹出窗口,脚本已默认适配GM_openInTab接口规避拦截。
  3. 变量不生效怎么办?
    • 检查变量名是否和规则中的占位符完全一致
    • 检查变量的前后缀是否和设置中的一致
    • 批量执行时传入的变量优先级高于固定变量,确认没有被覆盖
  4. 执行到一半卡住怎么办?
    • 检查单步执行超时设置,可适当调大
    • 检查页面是否被弹窗阻塞,可开启「屏蔽页面弹窗」设置
    • 查看日志确认是哪一步失败,手动调整后重新执行
  5. 验证码组怎么用? 只需要把需要人工处理验证码的规则移动到名称包含「验证码」的分组即可,执行完成后标签页会自动保留,不会关闭。
  6. 如何重置递增变量? 点击ScriptCat菜单的「↺ 重置递增变量计数器」,或在变量管理页点击「重置递增计数器」按钮,所有$i类的变量会从初始值重新开始计数。

⚠️ 注意事项

  1. 脚本的所有数据默认存储在浏览器的扩展存储中,清除浏览器数据会丢失所有规则,建议定期导出备份。
  2. v3.0版本对存储结构进行了重构,升级后会自动迁移旧版本的数据,无需手动操作。
  3. 请勿在敏感网站(如银行、支付页面)使用录制功能,避免泄露隐私信息。
  4. 批量执行大量规则时建议适当降低并发数,避免浏览器卡顿或被网站封禁IP。

📝 版本更新(v3.0.0)

  • 🚀 重构批量调度器:采用槽位制+心跳检测机制,大幅提升批量执行的稳定性
  • ✨ 新增验证码组支持:分组名含「验证码」的规则执行后保留标签页
  • 📝 新增日志系统:记录执行全流程,便于问题排查
  • 🎨 新增规则命名模板:支持{title}{seq}{date}等占位符自动生成规则名
  • 🔧 新增文本框变量自动替换:录制结束自动将输入内容替换为预设变量
  • 🛡️ 新增弹窗屏蔽功能:执行时自动拦截alert/confirm/prompt
  • 🖱️ 优化UI交互:所有浮动窗口支持拖拽、自动淡化,减少遮挡
  • 🐛 修复大量已知问题,提升录制与执行的兼容性

⚠️ 纯AI制作,任何问题、任何修改需求请找AI直接做

Script Details
Applicable Sites
LicenseAI生成任意使用
Permissions & access
Capabilities
StorageMenu commandOpen tab