Python PyAutoGUI 自动化操作指南:鼠标键盘控制与图像识别
本文介绍 Python 库 PyAutoGUI 的安装与核心功能,涵盖跨平台鼠标键盘模拟、消息框交互及截屏定位。通过具体代码示例展示如何获取屏幕尺寸、执行点击移动、文本输入及快捷键组合,并演示利用 locateOnScreen 进行图像匹配与自动化点击,适用于桌面应用自动化测试场景。
PyAutoGUI 简介与安装
简介
PyAutoGUI 是一个跨平台且无外部依赖的自动化测试工具,主要功能包括控制鼠标和键盘操作、获取屏幕尺寸、弹出消息对话框以及进行屏幕截图。
安装
pip install pyautogui
鼠标与键盘自动化控制
鼠标键盘控制
>>> import pyautogui
>>> screenWidth, screenHeight = pyautogui.size()
>>> currentMouseX, currentMouseY = pyautogui.position()
>>> pyautogui.moveTo(100, 150)
>>> pyautogui.click()
>>> pyautogui.moveRel(None, 10) # move mouse 10 pixels down
>>> pyautogui.doubleClick()
>>> pyautogui.moveTo(500, 500, duration=2, tween=pyautogui.tweens.easeInOutQuad) # use tweening/easing function to move mouse over 2 seconds.
>>> pyautogui.typewrite('Hello world!', interval=0.25) # type with quarter-second pause in between each key
>>> pyautogui.press('esc')
>>> pyautogui.keyDown('shift')
>>> pyautogui.typewrite(['left', 'left', 'left', 'left', 'left', 'left'])
>>> pyautogui.keyUp('shift')
>>> pyautogui.hotkey('ctrl', 'c')
消息对话框交互
显示消息弹出框
>>> import pyautogui
>>> pyautogui.alert('This is an alert box.')
'OK'
>>> pyautogui.confirm('Shall I proceed?')
'Cancel'
>>> pyautogui.confirm('Enter option.', buttons=['A', 'B', 'C'])
'B'
>>> pyautogui.prompt('What is your name?')
'Al'
>>> pyautogui.password('Enter password (text will be hidden)')
'swordfish'
屏幕截图与图像定位
截屏
>>> import pyautogui
>>> im1 = pyautogui.screenshot()
>>> im1.save('my_screenshot.png')
>>> im2 = pyautogui.screenshot('my_screenshot2.png')
定位截屏
>>> import pyautogui
>>> button7location = pyautogui.locateOnScreen('button.png') # returns (left, top, width, height) of matching region
>>> button7location
(1416, 562, 50, 41)
>>> buttonx, buttony = pyautogui.center(button7location)
>>> buttonx, buttony
(1441, 582)
>>> pyautogui.click(buttonx, buttony) # clicks the center of where the button was found
参考资料与总结
参考
http://pyautogui.readthedocs.io/en/latest/index.html https://github.com/asweigart/pyautogui https://github.com/asweigart/sushigoroundbot
总结
以上所述是小编给大家介绍的python PyAutoGUI 模拟鼠标键盘操作和截屏功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













