Py之PyAutoGUI:python库之PyAutoGUI的简介、安装、使用方法-阿里云开发者社区

开发者社区> 一个处女座的程序猿> 正文

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)



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
mydumper安装及安装故障汇总
? ?? mydumper是针对mysql数据库备份的一个轻量级第三方的开源工具,备份方式术语逻辑备份。它支持多线程,备份速度远高于原生态的mysqldump以及众多优异特性。
1016 0
Py之ipython:Python库之ipython的简介、安装、使用方法详细攻略
Py之ipython:Python库之ipython的简介、安装、使用方法详细攻略
18 0
Python数据分析之anaconda安装和使用
今天开始学习Python数据分析了,说到Python数据分析,大家都会推荐使用anaconda,但作为一个初学者,总是很多疑虑,但在实践中解决了一部分,先和大家分享分享。
941 0
Ubuntu15.10下如何使用EasyGui模块开发Python GUI
偶然的一个机会,发现了github上的这个开源的项目,easygui for python(一个基于TKinter的模块) 感觉很是惊讶,原来python也可以这么简单的开发出一些GUI界面(究其原因,是我自身的孤陋寡闻罢了)。
965 0
php-build 安装管理多个PHP版本的好帮手
当你开发多个使用PHP不同版本的项目的时候,你也许会期望类似Python 的virtualenv或者Ruby的rvm的工具。虽然php-build不能像virtualenv或rvm一样自动切换环境,但是它能帮助你编译和管理不同版本的PHP安装。
8 0
python环境安装和在eclipse中插件的使用
目录 安装Python python for eclipse插件安装 配置PyDev插件 测试 python环境安装和python for eclipse插件安装1、下载python环境和python for eclipsepython环境和python for eclipse插件下载地址 在Windows命令行中使用Python 如果你想要从Windows命
1474 0
+关注
一个处女座的程序猿
国内互联网圈知名博主、人工智能领域优秀创作者,全球最大中文IT社区博客专家、CSDN开发者联盟生态成员、中国开源社区专家、华为云社区专家、51CTO社区专家、Python社区专家等,曾受邀采访和评审十多次。仅在国内的CSDN平台,博客文章浏览量超过2500万,拥有超过57万的粉丝。
1701
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载
http://www.vxiaotou.com