python PyAutoGUI 模拟鼠标键盘操作和截屏功能

yipeiwu_com5年前Python基础

简介

一款跨平台/无依赖的自动化测试工具,目测只能控制鼠标/键盘/获取屏幕尺寸/弹出消息框/截屏。

安装

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 模拟鼠标键盘操作和截屏功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

python 处理string到hex脚本的方法

python 处理string到hex脚本的方法

实现目标:把文件1中数据如:B4A6C0ED69 处理后放入文件2:0XB4, 0XA6, 0XC0, 0XED, 0X69 V1.0代码如下(后续继续优化): #!/usr/bin...

linux系统使用python监测网络接口获取网络的输入输出

linux系统使用python监测网络接口获取网络的输入输出

net.py 获取网络接口的输入和输出 复制代码 代码如下:#!/usr/bin/env Pythonimport timeimport sys if len(sys.argv) >...

Python实现的井字棋(Tic Tac Toe)游戏示例

Python实现的井字棋(Tic Tac Toe)游戏示例

本文实例讲述了Python实现的井字棋(Tic Tac Toe)游戏。分享给大家供大家参考,具体如下: 说明 用python实现了井字棋,整个框架是本人自己构思的,自认为比较满意。另外,...

python新手经常遇到的17个错误分析

1)忘记在 if , elif , else , for , while , class ,def 声明末尾添加 :(导致 “SyntaxError :invalid syntax”)...

Python变量类型知识点总结

Python变量类型知识点总结

变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。 因此,变量可以指定不同的数据类型,...