Skip to main content

Mouse

Mouse 以主框架 CSS 像素为单位,相对于视口左上角移动。每个 page.mouse 都有独立的 Mouse 实例。

# 使用 page.mouse 绘制 100x100 的方形
page.mouse.move(0, 0)
page.mouse.down()
page.mouse.move(0, 100)
page.mouse.move(100, 100)
page.mouse.move(100, 0)
page.mouse.move(0, 0)
page.mouse.up()

mouse.click(x, y, **kwargs)

Added in: v1.8
  • x <float> 点击位置的 X 坐标。#
  • y <float> 点击位置的 Y 坐标。#
  • button <"left"|"right"|"middle"> 鼠标按钮,默认 left#
  • click_count <int> 点击次数,默认 1。参考 UIEvent.detail#
  • delay <float> mousedownmouseup 之间的延迟(毫秒),默认 0。#
  • returns: <NoneType>#

相当于依次执行 mouse.movemouse.downmouse.up

mouse.dblclick(x, y, **kwargs)

Added in: v1.8
  • x <float>#
  • y <float>#
  • button <"left"|"right"|"middle"> 默认值为 left#
  • delay <float> 两次鼠标按下(mousedown)与释放(mouseup)之间等待的时间,单位为毫秒。默认值为 0。#
  • 返回值: <NoneType>#

等价于连续两次 click,即 move/down/up/down/up

mouse.down(**kwargs)

Added in: v1.8
  • button <"left"|"right"|"middle">,默认 left#
  • click_count <int> 默认 1。#
  • returns: <NoneType>#

触发 mousedown 事件。

mouse.move(x, y, **kwargs)

Added in: v1.8
  • x, y 坐标;steps <int> 默认 1,用于发送中间 mousemove 事件。#
  • returns: <NoneType>#

触发 mousemove 事件,可分步骤平滑移动。

mouse.up(**kwargs)

Added in: v1.8
  • button, click_count 含义同 mouse.down#
  • returns: <NoneType>#

触发 mouseup 事件。

mouse.wheel(delta_x, delta_y)

Added in: v1.15

触发 wheel 事件。若未被拦截,可能造成页面滚动;方法本身不会等待滚动结束。