初识PyAutoGUI

本文介绍了PyAutoGUI,一个支持Windows、Linux和MAC的GUI自动化模块,涵盖了安装方法、基本操作如屏幕分辨率获取、鼠标和键盘控制、图像识别、屏幕截图以及定位功能。
摘要由CSDN通过智能技术生成

PyAutoGUI介绍

PyAutoGUI是跨平台(Windows、Linux、MAC都可以使用)的GUI自动化模块,可以通过这个模块实现操作鼠标、键盘、以及一些基本的图像识别,自动执行计算机上的任务。

Windows、Linux、MAC系统PyAutoGUI模块的安装方法:

Windows安装PyAutoGUI模块

pip install pyautogui

Linux安装PyAutoGUI模块

pip3 install python3-xlib
pip3 install pyautogui

MAC安装PyAutoGUI模块

pip3 install pyobj-core
pip3 install pyobj
pip3 instal pyautogui

PyAutoGUI文档网址

https://pyautogui.readthedocs.io/en/latest/quickstart.html

PyAutoGUI的基本使用

获取当前屏幕分辨率的宽度和高度

import pyautogui
width,height=pyautogui.size()
print("屏幕的宽度为",width)
print("屏幕的宽度为",height)

获取当前鼠标的位置

import pyautogui
position=pyautogui.position()
print("鼠标的位置为",position)

 判断当前位置是否在屏幕上

import pyautogui
pos=pyautogui.onScreen(100,300)
print(pos)

设置暂停

import pyautogui
pyautogui.PAUSE=2.5

 打开故障暂停

# 打开故障安全模式,当出现错误的时候,将鼠标移动到左上角将引发一个可以中止程序的 :pyautogui.FailSafeException
import pyautogui
pyautogui.FAILSAFE=True

鼠标移动

import pyautogui
# XY的坐标是在屏幕的左上角有0,0原点,X向右增加,Y向下增加
# duration 移动到(x,y)位置所花费的时间
pyautogui.moveTo(100,300,duration=0.0)
# 移动到相对于当前的位置的(x,y)位置
pyautogui.moveRel(300,400,duration=0.0)

鼠标拖动 

import pyautogui
# 将鼠标拖动到(x,y)位置,duration是拖动到指定位置需要的时间,默认是0.0秒
#在MAC系统上不能立即拖动
pyautogui.dragTo(100,300,duration=0.0)
# 将鼠标移动到当前位置的相对位置(x,y)
pyautogui.dragRel(200,300,duration=0.0)

鼠标点击

import pyautogui
# 在(100,300)位置上单机鼠标左键
# clicks鼠标点击的次数,默认是1次
# interval是鼠标点击间隔的时间,默认是0.0s
# button鼠标按键类型,left是左键,right是右键,middle是中间键
pyautogui.click(100,300,clicks=1,interval=2.5,button='left')
import pyautogui
# 点击鼠标右键
pyautogui.rightClick(100,300)
# 点击鼠标中间键
pyautogui.middleClick(200,300)
# 鼠标双击
pyautogui.doubleClick(400,500)
# 鼠标三重点击
pyautogui.tripleClick(600, 700)

鼠标滚动

import pyautogui
# 向上滚动
pyautogui.scroll(200)
# 向下滚动
pyautogui.scroll(-100)
# 将鼠标移动到指定位置,向上滚动10次
pyautogui.scroll(10,200,300)

# 水平滚动
# 向右滚动
pyautogui.hscroll(10)
# 向左滚动
pyautogui.hscroll(-10)
# 将鼠标移动到指定位置,向右滚动10次
pyautogui.hscroll(10,200,300)

调用单个按钮的按下和松开

import pyautogui
# 在指定位置按下鼠标左键
pyautogui.mouseDown(200,300,button='left')
# 在指定位置松开鼠标左键
pyautogui.mouseUp(200,300,button='left')

键盘操作

import pyautogui
# 使用键盘输入字符
# pyautogui.typewrite("hello \n world",interval=0.0)
# 传递密钥名称列表
pyautogui.typewrite(['a', 'b', 'c', 'left', 'backspace', 'enter', 'f1'], interval=0.0)
# 输出秘钥名称
print(pyautogui.KEY_NAMES)
# 组合按键
pyautogui.hotkey('ctrl','c')
# 按钮按下
pyautogui.keyDown("esc")
# 按钮松开
pyautogui.keyUp("esc")

消息框函数

import pyautogui
# 消息框
pyautogui.alert("消息框")
# 确认框
pyautogui.confirm("是否继续")
# 输入框
pyautogui.prompt("姓名")

屏幕截图

在Linux上使用屏幕截图,需要先:sudo apt-get install scrot

import pyautogui
img=pyautogui.screenshot()
img.save("demo.png")

获取图片的位置

import pyautogui
# 有要点击的图像文件,可以在屏幕上找到它
pyautogui.locateOnScreen("demo.png")
# 返回left,top,weight,height
# 返回屏幕上所有位置的生成器
for i in pyautogui.locateAllOnScreen("demo.png"):
    print(i)

# 返回图像在屏幕上找到的中间位置的 XY 坐标
pyautogui.locateCenterOnScreen()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值