使用pyautogui和inspect快速准确定位鼠标位置

@[TOC] 1.前言

1.前言

最近在研究客户端软件进行Python自动化测试时,知道了pyautogui这个库,然后在csdn搜索相关资料时,看到某位老师写的文章,文章在此:女朋友让我深夜十二点催她睡觉,我有Python我就不干
看完文章和不少小伙伴都跃跃欲试,结果发现定位鼠标时出现了问题,大概就是鼠标本来定位在A点,但是运行Python程序时,鼠标位置变化了,获取到的坐标不正确,可能有的小伙伴要说了,那我用快捷键启动程序,如果鼠标单击在其他地方,比如微信输入框,这时候快捷键也是不生效的,有没有更好的办法?
在这里插入图片描述

2.屏幕分辨率和坐标系​​

1920*1080屏幕

如图,是最常见的1920*1080屏幕,屏幕左上角为(0,0)右下角为(1919,1079)不是(1920,1080)​​​​哈。向下为Y+,向右为X+。

3.pyautogui

PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,利用它可以实现自动化任务.
安装:
安装比较简单

pip install pyautogui #方法1
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyautogui  #网不好的试试清华这个镜像地址

pyautogui的方法比较多,站内可以查到,在此不再赘述。此次主要讨论获取鼠标地址,试验position函数。

x,y = pyautogui.position() #获取鼠标当前位置
print ("当前鼠标的X轴的位置为:{},Y轴的位置为:{}".format(x,y)) #控制台打印出来

当前鼠标的X轴的位置为:931,Y轴的位置为:777
但是你会发现,当在微信输入框时,再去点击运行run获取的鼠标位置就不对了,这是因为运行程序时,鼠标位置发生了变化,如图定位在记事本输入:
错误位置:
在这里插入图片描述
正确位置:
在这里插入图片描述
可能有的小伙伴想到了,对了,写一个死循环,程序跑起来再去点击鼠标定位

import  time
import pyautogui

while True:
    print("Press Ctrl+F2 to end")
    # 获取屏幕的尺寸,主要后面做简单验证,这两行代码可以省略
    screenWidth, screenHeight = pyautogui.size()
    print(screenWidth, screenHeight)
    # 获取当前鼠标的位置

    print(f'鼠标当前位置为:{pyautogui.position()}')

    time.sleep(1)

这种方法比较笨,有没有更简单的方法呢?
那就是借助辅助工具inspect

inspect:

Inspect 自动化测试辅助工具
使用起来比较简单,打开软件,移动鼠标,注意How found 那一行,mouse move括号里即是鼠标当前位置
在这里插入图片描述

在这里插入图片描述
是不是很好用,比代码获取简单多了,小伙伴有更好的方法可以留言~~~

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值