评论
初触PyAutoGui桌面自动化学习心得

初触PyAutoGui桌面自动化学习心得

人的生活注定要受苦,但我们必须寻找快乐,哪怕只是电光火石,因为快乐是照在沉沉大地上的寥落的星辰

初触PyAutoGui桌面自动化学习心得

关于Python桌面自动化火热的有2个库,这2个库可以这样理解

PyAutoGui:支持多平台,模拟鼠标键盘模拟,图像识别(通俗理解按键精灵)

PyWinAuto:仅支持Wind,Windows API的扩展,也支持鼠标键盘模拟,图像识别(通俗理解它更像让软件自己动起来)

学习

PyAutoGui:上手难度简单,易学习

PyWinAuto:上手难度大,窗口句柄和控件开发下质量好很多

安装

安装之后各种报错,各种不兼容很狗,不是一点

填坑

1.Windows建议安装0.9.50版本,且需要安装Pillow库

2.PyAutoGui.locateOnScreen函数最好之前先操作下鼠标

3.很多语法 你明明没错,就是没办法运行

基础

使用PyAutoGui再来用到的基础内容不多分别有以下内容

我们通过语法打印获取坐标

while True:
    print(pyautogui.position())
    time.sleep(2)

通过坐标我们可以让鼠标滑动指定位置点击或其他操作

# 左键点击鼠标位置
pyautogui.click(x=480,y=71,clicks=1)

定位的东西它需要固定坐标,如果你移动了文件对应坐标的内容会发生变化,这时我们可以通过图像定位确认下坐标下文件是不是我们需要的

# 图像定位
fengrui = pyautogui.locateOnScreen('test.png')
where fengrui == None:
  print('找不到图像')
​
print('找到了')

基础语法

# 引入框架
import pyautogui
# 计时器
import time
​
# 故障转移
pyautogui.FAILSAFE = False
​
# 启动初始化3秒
time.sleep(3)  
​
# 左键点击鼠标位置
pyautogui.click(x=480,y=71,clicks=1)  
time.sleep(1) 
​
# 回车键
pyautogui.press('enter') 
time.sleep(1) 
​
# 键盘输入
pyautogui.typewrite('Yinfengrui')
time.sleep(1) 
​
# 按下键盘Q键
pyautogui.press('Q')
time.sleep(1) 
​
# 图像定位
fengrui = pyautogui.locateOnScreen('test.png')
where fengrui == None:
  print('找不到图像')
​
print('找到了')

总结

1.每次执行一个动作最好给一个停顿一秒时间

2.坐标定位+图像识别在一定程度上可以减少错误发生

3.通过学习发现,如果你操作的软件是是可以设置快捷键的,那么键盘按快捷键会比坐标定位稳定性高出很多