Py之PyAutoGUI:python库之PyAutoGUI的简介、安装、使用方法

简介: Py之PyAutoGUI:python库之PyAutoGUI的简介、安装、使用方法

PyAutoGUI的简介


   PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,利用它可以实现自动化任务。让所有GUI都自动化¶ 本教程译自大神Al Sweigart的PyAutoGUI项目,Python自动化工具,更适合处理GUI任务,网页任务推荐。PyAutoGUI可以模拟鼠标的移动、点击、拖拽,键盘按键输入、按住操作,以及鼠标+键盘的热键同时按住等操作,可以说手能动的都可以。


    The purpose of PyAutoGUI is to provide a cross-platform Python module for GUI automation for human beings. The API is designed to be as simple as possible with sensible defaults.


参考文献

Welcome to PyAutoGUI’s documentation

Doc PyAutoGUI


PyAutoGUI的安装


pip install pyautogui

image.png


哈哈,大功告成!



PyAutoGUI的使用方法

#关于库下函数使用方法概况<br>import pyautogui

#关于屏幕分辨率、鼠标坐标等

position=pyautogui.position()

resolution=pyautogui.size()  

if_position=pyautogui.onScreen(1900, 2000)

print(position,resolution,if_position)

#1.1、关于鼠标光标定位

pyautogui.moveTo(screenWidth / 2, screenHeight / 2)

pyautogui.moveTo(100,100)                          

pyautogui.moveTo(x=10, y=10, duration=3)  

#缓动/渐变、Tween/Easing函数:这些效果函数是模仿Al Sweigart的PyTweening模块,可以直接使用,不需要额外安装。

pyautogui.moveTo(100, 100, 2, pyautogui.easeInQuad)    

pyautogui.moveTo(100, 100, 2, pyautogui.easeOutQuad)  

pyautogui.moveTo(100, 100, 2, pyautogui.easeInOutQuad)

pyautogui.moveTo(100, 100, 2, pyautogui.easeInBounce)  

pyautogui.moveTo(100, 100, 2, pyautogui.easeInElastic)

pyautogui.moveRel(None, 10)

pyautogui.moveRel(xOffset=1000, yOffset=1000, duration=6)

#1.2、关于鼠标按下松开

pyautogui.mouseDown(button='right'); pyautogui.mouseUp(button='right')      

pyautogui.mouseDown(button='right')            

pyautogui.mouseUp(button='right', x=100, y=200)

#1.3、关于鼠标点击

#为了操作方便,PyAutoGUI提供了doubleClick()、tripleClick()、rightClick()来实现双击、三击、右击操作

#pyautogui.click(x=moveToX, y=moveToY, clicks=num_of_clicks, interval=secs_between_clicks, button='left')

pyautogui.click(x=100, y=200, duration=2)                

pyautogui.click(button='right', clicks=2, interval=0.25)

pyautogui.dragTo(300, 400, 2, button='left')            

#1.4、关于鼠标滚动

# pyautogui.scroll(clicks=amount_to_scroll, x=moveToX, y=moveToY)

pyautogui.scroll(10)              

pyautogui.scroll(10, x=100, y=100)

#2.1、关于键盘按下松开

key_name=pyautogui.KEYBOARD_KEYS[:10]

pyautogui.keyDown(key_name)          

pyautogui.keyUp(key_name)

#2.2typewrite()普通键:键盘上可以按的键都可以调用,typewrite()函数只能用于单个字符键,不能按SHITF和F1这些功能键。

pyautogui.typewrite('Hello world!\n', interval=0.1)

pyautogui.typewrite(['a', 'b', 'c', 'left', 'backspace', 'enter', 'f1'], interval=secs_between_keys)

#2.3press()功能键:press()函数其实是keyDown()和keyUp()函数的包装,模拟的按下然后松开两个动作。

pyautogui.press('esc')

pyautogui.press('enter')

pyautogui.press('f1')

pyautogui.press('left')

pyautogui.keyUp('shift')

#2.4热键组合;('ctrl', 'a')全选、('ctrl', 'c')复制、('ctrl', 'v')粘贴

pyautogui.hotkey('ctrl', 'a')

#3、关于消息弹窗函数:

pyautogui.alert('这个消息弹窗是文字+OK按钮')

pyautogui.confirm('这个消息弹窗是文字+OK+Cancel按钮')

pyautogui.prompt('这个消息弹窗是让用户输入消息的,单击OK')

#4、关于截屏的函数:屏幕位置使用X和Y轴的笛卡尔坐标系。原点(0,0)在左上角,分别向右、向下增大。  如果屏幕像素是 1920×10801920×1080 ,那么右下角的坐标是(1919, 1079)。

pyautogui.screenshot('C:/Users/99386/Desktop/screenshot.png')

position_four=pyautogui.locateOnScreen('C:/Users/99386/Desktop/screenshot.png')

for i in pyautogui.locateAllOnScreen('C:/Users/99386/Desktop/screenshot.png'):

   print(i)

list1=list(pyautogui.locateAllOnScreen('C:/Users/99386/Desktop/screenshot.png'))

position_center=pyautogui.locateCenterOnScreen('C:/Users/99386/Desktop/screenshot.png')

print(position_four,list1,position_center)



相关文章
|
3月前
|
人工智能 Python
python基本数据类型简介
本文简要介绍了Python的基本数据类型,包括整型、浮点型、字符串、列表、字典和布尔类型,帮助读者对Python数据类型有初步了解。
115 0
|
5月前
|
数据管理 开发者 Python
揭秘Python的__init__.py:从入门到精通的包管理艺术
__init__.py是Python包管理中的核心文件,既是包的身份标识,也是模块化设计的关键。本文从其历史演进、核心功能(如初始化、模块曝光控制和延迟加载)、高级应用场景(如兼容性适配、类型提示和插件架构)到最佳实践与常见陷阱,全面解析了__init__.py的作用与使用技巧。通过合理设计,开发者可构建优雅高效的包结构,助力Python代码质量提升。
435 10
|
7月前
|
数据采集 运维 Java
课时13:Python简介
今天我们分享的是 Python 的简单介绍,主要分为以下四部分。 1. Python 的百科介绍 2. Python 的发明者 3. Python 的发展历史 4. Python 的用途
131 1
|
12月前
|
网络协议 Java Linux
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
本文介绍了PyAV库,它是FFmpeg的Python绑定,提供了底层库的全部功能和控制。文章详细讲解了PyAV的安装过程,包括在Windows、Linux和ARM平台上的安装步骤,以及安装中可能遇到的错误和解决方法。此外,还解释了时间戳的概念,包括RTP、NTP、PTS和DTS,并提供了Python代码示例,展示如何获取RTSP流中的各种时间戳。最后,文章还提供了一些附录,包括Python通过NTP同步获取时间的方法和使用PyAV访问网络视频流的技巧。
2594 4
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
|
11月前
|
开发者 Python
Python中__init__.py文件的作用
`__init__.py`文件在Python包管理中扮演着重要角色,通过标识目录为包、初始化包、控制导入行为、支持递归包结构以及定义包的命名空间,`__init__.py`文件为组织和管理Python代码提供了强大支持。理解并正确使用 `__init__.py`文件,可以帮助开发者更好地组织代码,提高代码的可维护性和可读性。
793 2
|
12月前
|
程序员 PHP Python
Python3 简介
【10月更文挑战第8天】Python3 简介。
134 4
|
12月前
|
存储 关系型数据库 数据库
轻量级数据库的利器:Python 及其内置 SQLite 简介
轻量级数据库的利器:Python 及其内置 SQLite 简介
339 3
|
数据采集 算法 数据处理
Python中的列表推导式:简介与应用
【9月更文挑战第14天】本文旨在介绍Python中一种强大且简洁的构造列表的方法——列表推导式。我们将从基础语法入手,通过实例演示其用法,并探讨在数据处理和算法优化中的应用价值。文章将不包含代码示例,而是专注于概念理解和应用场景的描述,以促进读者对列表推导式的深入认识。
289 3
|
JavaScript Java C语言
Python简介
Python简介。
99 4
|
Ubuntu Linux 数据安全/隐私保护
使用Cython库包对python的py文件(源码)进行加密,把python的.py文件生成.so文件并调用
本文介绍了在Linux系统(Ubuntu 18.04)下将Python源代码(`.py文件`)加密为`.so文件`的方法。首先安装必要的工具如`python3-dev`、`gcc`和`Cython`。然后通过`setup.py`脚本使用Cython将`.py文件`转化为`.so文件`,从而实现源代码的加密保护。文中详细描述了从编写源代码到生成及调用`.so文件`的具体步骤。此方法相较于转化为`.pyc文件`提供了更高的安全性。
1075 2

推荐镜像

更多