做自动化时,点一个按钮看起来简单,但不同场景要用不同的点击模式。
影刀的鼠标点击指令有4种模式:模拟点击、前端点击、强制点击、移动点击。选错了要么点不动,要么把页面点歪。
我花了一周踩完所有坑,总结出一个选择口诀:默认用前端,弹窗用模拟,遮挡用强制,坐标最后用。
一、四种模式一句话对比
| 模式 | 原理 | 优点 | 缺点 | 适用场景 |
|------|------|------|------|----------|
| 前端点击 | 直接触发元素的点击事件 | 快,不移动鼠标 | 某些JS监听可能失效 | 90%场景用这个 |
| 模拟点击 | 模拟真实鼠标移动+点击 | 最接近真人操作 | 慢,需要鼠标可见 | 反爬严格、有鼠标轨迹检测的网站 |
| 强制点击 | 直接执行点击命令,无视元素状态 | 遮罩层、disabled状态也能点 | 可能点错位置 | 元素被遮挡/禁用时 |
| 移动点击 | 把鼠标移动到元素中心再点 | 触发hover效果 | 有鼠标轨迹 | 需要悬浮触发的浮层 |
版本提示: 影刀社区版和创业版都支持这4种模式,在点击指令的右侧属性面板“点击方式”下拉框里选择。
二、前端点击:默认首选
设置位置
点击指令右侧详情面板 → 点击方式 → 选择“前端点击”
适用场景
- 普通按钮、链接、复选框
- 无特殊反爬的网页
- 你不需要触发鼠标悬浮效果时
为什么默认用它?
- 速度快:不移动鼠标光标,后台直接发点击事件
- 不干扰用户:流程运行时你可以继续用鼠标做其他事
- 稳定:不受鼠标位置影响
唯一缺点
某些网站的前端框架(比如Vue/React的某些组件)监听的是mousedown+mouseup组合事件,单纯的前端点击可能无效。这时候换成模拟点击。
三、模拟点击:反爬严格时用
设置位置
点击方式 → 选择“模拟点击”
适用场景
- 淘宝/京东等反爬严格的网站
- 需要鼠标实际移动过去才能点到的按钮
- 前端点击无效时
注意事项
- 流程运行时不要移动鼠标,否则会点到别处
- 速度比前端点击慢约0.3-0.5秒
- 需要屏幕上有该元素(不能被最小化窗口挡住)
实战案例:淘宝登录按钮
淘宝的登录按钮用了特殊的事件监听,前端点击经常无效。换成模拟点击就稳定了。
捕获元素:淘宝登录按钮
鼠标点击(登录按钮, 点击方式=模拟点击)
容易踩的坑
如果影刀运行在后台(窗口最小化),模拟点击会失败,因为需要真实的鼠标坐标。
解决:使用“激活窗口”指令先把浏览器窗口拉到前台。
四、强制点击:元素被遮挡时用
设置位置
点击方式 → 选择“强制点击”
适用场景
- 弹窗蒙层没完全消失,但按钮已可点
- 按钮处于
disabled状态但实际可点 - 元素被其他div浮层盖住
原理
强制点击不检查元素是否可见、是否启用,直接往那个坐标发送点击命令。
实战案例:拼多多SKU选择
有时候SKU选项被短暂的加载蒙层挡住,蒙层0.1秒后消失,但前端点击会报错“元素不可见”。
用强制点击直接点,无视蒙层。
# 捕获元素:黑色-M码选项
//li[@data-sku="black-m"]

# 点击方式选“强制点击”
风险
- 如果元素位置判断错误(比如页面滚动后),可能点到空白区域
- 建议只在明确知道元素位置正确但被临时遮挡时使用
五、移动点击:触发悬浮效果
设置位置
点击方式 → 选择“移动点击”(部分版本叫“鼠标移动并点击”)
适用场景
- 鼠标移上去才会出现子菜单的导航栏
- 需要先hover才能点击的下拉选项
- 浮层依赖于鼠标位置
和模拟点击的区别
- 模拟点击:直接移动到元素中心点一下
- 移动点击:先移动过去(触发hover),稍作停顿(默认0.2秒),再点击
实战案例:淘宝导航栏“我的淘宝”悬浮菜单
捕获元素:我的淘宝(一级菜单)
鼠标点击(我的淘宝, 点击方式=移动点击)
# 此时悬浮菜单出现
等待元素出现(悬浮菜单中的“已买到的宝贝”, 2秒)
鼠标点击(已买到的宝贝, 点击方式=前端点击)
注意
移动点击后,如果鼠标没有移开,可能一直保持hover状态影响后续操作。可以在点击后用“鼠标移动”指令把鼠标移到左上角(坐标0,0)。
六、选择决策流程图
-
按钮能否被前端点击点击到?
→ 能:就用前端点击(最快)
→ 不能:进入下一步 -
问题是不是因为元素被遮挡/禁用?
→ 是:用强制点击
→ 不是:进入下一步 -
是否需要先悬浮再点击?
→ 是:用移动点击
→ 不是:用模拟点击
记住这个顺序,95%的点击问题都能解决。
七、补充:双击、右键、点击坐标
影刀还有“鼠标双击”、“鼠标右键”指令,用法类似。
如果需要点击屏幕上的某个坐标(不依赖于元素),用“鼠标移动到坐标”+“鼠标点击”。
点击坐标的用法
鼠标移动到坐标(X=500, Y=300)
鼠标点击(左键)
场景: 页面上的canvas画布元素无法捕获,只能按固定坐标点击游戏内的按钮。
常见问题速查
| 问题 | 原因 | 解决方法 |
|---|---|---|
| 前端点击没反应,模拟点击就有 | 网站用了特殊事件监听 | 改用模拟点击 |
| 模拟点击报错“元素不在可视区域” | 窗口最小化或元素被滚动条移出 | 先“激活窗口”,再加“滚动到元素” |
| 强制点击点了没反应或点错 | 元素位置变了(页面滚动后) | 先“滚动到元素”,或换前端/模拟点击 |
| 移动点击触发了悬浮但没点到 | 移动后等待时间太短 | 在点击前加“等待(300毫秒)” |
| 点击复选框/单选框总是不生效 | 可能需要先聚焦 | 先“点击”该元素一次(聚焦),再“设置复选框状态” |
推荐资源
- 影刀官方学院: “网页自动化——鼠标点击高级用法”(视频里演示了4种模式的实际效果)
- 我的文章联动:
- 上一篇:[等待指令三兄弟(选题池10号)]
- 下一篇预告:[影刀RPA零基础教程:输入文本与模拟输入的区别——什么时候用哪个](选题池12号)
- 小技巧: 在点击指令前加“高亮元素”(调试指令),可以可视化看到影刀准备点击哪里,避免点错
作者:林焱
本文为《影刀RPA学习手册》系列文章之一,内容源于实操经验的整理与分享。
