python模拟鼠标键盘操作_如何用 python 模拟鼠标和键盘的操作

前言

不论是模拟鼠标操作还是键盘操作,实际上我们都使用了pywinauto这个库里面的内容。

模拟鼠标操作,我们直接调用pywinauto.mouse这个模块里面的各个方法即可;而模拟键盘输入,我们则需要用到pywinauto.keyboard这个模块里面的SendKeys(keyname)方法。

模拟鼠标动作

模拟鼠标操作,首先需要获取当前连接的窗口,然后再调用相应模块里面的方法:

from airtest.core.api import *

auto_setup(__file__)

# 获取当前连接的窗口

dev = device()

# 拿到鼠标,并模拟鼠标的右键点击操作

dev.mouse.right_click(coords=(1920,100))

在pywinauto.mouse这个模块里,还提供了很多常用的鼠标操作的方法:

# 鼠标点击操作,可以修改coords来指定点击位置

pywinauto.mouse.click(button='left', coords=(0, 0))

# 鼠标双击操作,可以修改coords来指定双击位置

pywinauto.mouse.double_click(button='left', coords=(0, 0))

# 移动鼠标,可以修改coords使鼠标移动到指定位置

pywinauto.mouse.move(coords=(0, 0))

# 鼠标右键点击,可以修改coords来指定右键点击位置

pywinauto.mouse.right_click(coords=(0, 0))

# 鼠标滚动操作,可以修改coords来指定滚动位置,修改wheel_dist来指定滚动距离

pywinauto.mouse.scroll(coords=(0, 0), wheel_dist=1)

更多模拟鼠标操作的方法,可以

模拟键盘输入

调用Airtest封装好的keyevent方法

比较特别的是,Airtest里面还有封装好的keyevent方法,来供我们发送键盘事件。从下面的源码可以看出,这个方法其实也是用的pywinauto库里面的内容。

0fd4828a-dc9d-4996-b107-074da7999ba4.png!large

只要连接了窗口设备,我们就可以直接使用Airtest封装好的keyevent方法来模拟键盘输入,可以省略获取当前窗口的操作:

from airtest.core.api import *

auto_setup(__file__)

# 模拟键盘输入^a和DELETE事件

keyevent("^a")

keyevent("{DELETE}")

调用SendKeys方法

与模拟鼠标操作类似,调用pywinauto.keyboard模块里面的SendKeys(keyname)方法,也需要先获取当前连接的窗口:

from airtest.core.api import *

auto_setup(__file__)

# 获取当前连接的窗口

dev = device()

# 拿到键盘,模拟输入^a,^a代表Ctrl+A,即全选

dev.keyboard.SendKeys("^a")

dev.keyboard.SendKeys("{DELETE}")

注意,这里的keyname需要用""括起来。更多keyname可以参考下图:

0990f441-cbf4-4f2e-b355-54606ef03446.png!large

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值