跳转到内容

根据坐标拖拽

根据坐标拖拽 用于在屏幕上从一个坐标点拖拽到另一个坐标点,模拟按住并移动的手势。它适合滑块验证、拖动排序、画布绘制、地图平移等需要精确坐标控制的场景。

指令标识:MobileDragByPoint
指令类型:手机指令
指令描述:根据起止坐标拖拽

工作流支持「可视化编排」和「代码编排」两种创建方式。根据坐标拖拽 在两种方式里都能用,核心业务参数一致,区别主要是你通过界面配置,还是通过 Python 脚本配置。

方式怎么用适合人群
可视化编排(推荐先学)拖入「根据坐标拖拽」节点,在右侧表单填写起止坐标大多数用户,零代码,适合快速搭建和调试
代码编排(Python)在脚本中调用 bots.mobileDragByPoint(startX=..., startY=..., endX=..., endY=...)熟悉代码、需要复用脚本或批量生成流程的用户

第一次使用建议先用可视化编排跑通,再迁移到 Python 代码编排。下方「参数说明」同时给出界面字段和代码参数名,方便两种方式对应。

  • 需要在两个具体坐标之间拖动,例如拖动滑块、拖动排序项。
  • 元素没有稳定选择器,只能用坐标控制手势。
  • 需要控制拖拽速度以贴近真实操作。

下面用一个常见场景演示:把滑块从左侧拖到右侧完成滑动验证。按 3 步即可跑起来:

  1. 在工作流画布中添加 根据坐标拖拽 指令。
  2. 在右侧配置面板填写 起点 X / 起点 Y终点 X / 终点 Y;如需更真实的拖动,可设置 滑动速度
  3. 点击运行,确认拖拽生效(滑块移动到目标位置),再继续后续操作。

【图片占位 | command-mobiledragbypoint-config】
截图内容建议: 截一张可视化编排页面,画布选中「根据坐标拖拽」节点,右侧属性面板展示起点坐标、终点坐标与速度区域。
标注建议: 用 ① 标出画布中的节点,用 ② 标出起点坐标输入,用 ③ 标出终点坐标输入,用 ④ 标出速度参数。
用户看完应能明白: 核心是填写起止坐标,速度是按需配置项。

界面名称代码属性名类型必填默认值说明
起点 XstartXNumber-拖拽起点的横坐标(像素)。
起点 YstartYNumber-拖拽起点的纵坐标(像素)。
终点 XendXNumber-拖拽终点的横坐标(像素)。
终点 YendYNumber-拖拽终点的纵坐标(像素)。
滑动速度durationInteger500滑动速度,单位毫秒,用于控制手势移动快慢。

该指令无输出参数。是否成功建议通过页面变化与运行日志判断。

  • 根据坐标拖拽 节点运行结束后状态为成功。
  • 运行日志中没有参数缺失、超时或执行失败等错误。
  • 后续节点能够继续执行,流程没有因为该节点异常中断。
现象 / 报错原文可能原因处理建议
日志报 Mobile device not configured流程未连接设备先执行连接/占用设备节点,或在全局变量中配置设备上下文
拖拽无效果起止坐标错误或越界核对坐标是否在屏幕范围内,建议按屏幕宽高比例计算坐标
滑块未到位拖拽速度过快 / 距离不准设置合适的 duration,并微调终点坐标
拖拽被识别为点击起止点过近拉开起止坐标距离,确保产生明显位移

代码编排以 Python 为主。运行上下文由代码编排模板创建,示例里只需要关注业务指令本身。

# 从 (100, 800) 拖拽到 (600, 800)
bots.mobileDragByPoint(
startX=100,
startY=800,
endX=600,
endY=800,
)

如需控制拖动速度,可设置 duration

bots.mobileDragByPoint(
startX=100,
startY=800,
endX=600,
endY=800,
duration=500,
)

可视化表单里的「起点 X / 起点 Y」「终点 X / 终点 Y」「滑动速度」分别对应代码里的 startX/startYendX/endYduration

如果你想在工作流中通过节点动态编排指令,可使用 执行指令(XML)节点。

A: 可结合 获取手机屏幕宽度获取手机屏幕高度 拿到屏幕尺寸,再按比例计算起止坐标,从而适配不同分辨率设备。

Q2:和「拖拽元素」有什么区别?

Section titled “Q2:和「拖拽元素」有什么区别?”

A: 拖拽元素 通过选择器定位源/目标元素;根据坐标拖拽则直接用坐标控制,适合没有稳定选择器的场景。