PyAutoGUI——让所有GUI都自动化

安装命令:

pip install pyautogui

1.简介

1.1 目的

PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,多平台支持(Windows,OS X,Linux)。可以用pip安装,Github上有源代码。

下面的代码让鼠标移到屏幕中央。

import pyautogui
screenWidth, screenHeight = pyautogui.size()
pyautogui.moveTo(screenWidth / 2, screenHeight / 2)

PyAutoGUI可以模拟鼠标的移动、点击、拖拽,键盘按键输入、按住操作,以及鼠标+键盘的热键同时按住等操作,可以说手能动的都可以。

pyautogui基础操作样例

import pyautogio
# 获取当前屏幕分辨率
screenWidth, screenHeight = pyautogui.size()# 获取当前鼠标位置
currentMouseX, currentMouseY = pyautogui.position()# 鼠标移动坐标为100, 100位置  绝对移动
pyautogui.moveTo(100, 100)# 鼠标左击
pyautogui.click()# 鼠标向下移动 相对移动
pyautogui.moveRel(None, 10)# 鼠标双击
pyautogui.doubleClick()# 用缓动/渐变函数让鼠标2秒后移动到(500, 500)位置
# use tweening/easing function to move mouse over 2 seconds.
pyautogui.moveTo(500, 500, duration=2, tween=pyautogui.easeInOutQuad)# 在每次输入之间暂停0.25秒
pyautogui.typewrite('Hello world!', interval=0.25)# 键盘点击esc
pyautogui.press('esc')# 按住shift键
pyautogui.keyDown('shift')
pyautogui.press(['left', 'left', 'left', 'left', 'left', 'left'])# 放开shift键
pyautogui.keyUp('shift')
pyautogui.hotkey('ctrl', 'c')

PyAutoGUI键盘表:

‘enter’ (或‘return’ 或 ‘\n’)

回车

‘esc’

ESC键

‘shiftleft’, ‘shiftright’

左右SHIFT键

‘altleft’, ‘altright’

左右ALT键

‘ctrlleft’, ‘ctrlright’

左右CTRL键

‘tab’ (‘\t’)

TAB键

‘backspace’, ‘delete’

BACKSPACE 、DELETE键

‘pageup’, ‘pagedown’

PAGE UP 和 PAGE DOWN键

‘home’, ‘end’

HOME 和 END键

‘up’, ‘down’, ‘left’, ‘right’

箭头键

‘f1’, ‘f2’, ‘f3’….

F1…….F12键

‘volumemute’, ‘volumedown’, ‘volumeup’

有些键盘没有

‘pause’

PAUSE键

‘capslock’, ‘numlock’, ‘scrolllock’

CAPS LOCK, NUM LOCK, 和 SCROLL LOCK 键

‘insert’

INS或INSERT键

‘printscreen’

PRTSC 或 PRINT SCREEN键

‘winleft’, ‘winright’

Win键

‘command’

Mac OS X command键

文档:

https://muxuezi.github.io/posts/doc-pyautogui.html

http://pyautogui.readthedocs.io/en/latest/introduction.html

http://blog.csdn.net/ibiao/article/details/54406803

http://www.chenxm.cc/post/633.html

Python控制鼠标和键盘-PyAutoGUI用法详解相关推荐

  1. python方向键控制角色_Python控制鼠标和键盘-PyAutoGUI用法详解

    PyAutoGUI--让所有GUI都自动化 安装代码:pip install pyautogui 1.简介 1.1 目的 PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自 ...

  2. Python控制鼠标和键盘-PyAutoGUI

    PyAutoGUI是用Python写的一个模块,使用它可以控制鼠标和键盘. 利用它可以实现自动化任务,再也不用担心有重复枯燥的任务了. pyautogui模块的功能: 移动鼠标.点击左右键和滚轮 发送 ...

  3. python的raw_ input是什么意思-对python中raw_input()和input()的用法详解

    最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...

  4. python中str和input_对python中raw_input()和input()的用法详解

    最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...

  5. python3 isinstance用法_对python中assert、isinstance的用法详解

    1. assert 函数说明: Assert statements are a convenient way to insert debugging assertions into a program ...

  6. python装饰器详解-Python装饰器基础概念与用法详解

    本文实例讲述了Python装饰器基础概念与用法.分享给大家供大家参考,具体如下: 装饰器基础 前面快速介绍了装饰器的语法,在这里,我们将深入装饰器内部工作机制,更详细更系统地介绍装饰器的内容,并学习自 ...

  7. python中permute_PyTorch中permute的用法详解

    PyTorch中permute的用法详解 permute(dims) 将tensor的维度换位. 参数:参数是一系列的整数,代表原来张量的维度.比如三维就有0,1,2这些dimension. 例: i ...

  8. python定义类object_Python之ClassObject用法详解

    类和对象的概念很难去用简明的文字描述清楚.从知乎上面的一个回答中可以尝试去理解: 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为.例如,一条狗是一个对象,它的状态有:颜色.名字.品种:行 ...

  9. python中的super用法详解_【Python】【类】super用法详解

    一.问题的发现与提出 在Python类的方法(method)中,要调用父类的某个方法,在Python 2.2以前,通常的写法如代码段1: 代码段1: class A: def __init__(sel ...

最新文章

  1. Tensorflow框架是如何支持分布式训练的?
  2. 所引用的程序集没有强命名解决方法
  3. mysql新建备份在哪里_navicat for MySQL创建备份计划的详细流程
  4. [恢]hdu 2117
  5. java content()_Java contentEquals() 方法 - Break易站
  6. Git 常用命令记录
  7. Elasticsearch 节点发现
  8. php 获取硬盘所有分区,硬盘怎么分为整数分区|电脑硬盘分区整数对照表
  9. bzoj 4316: 小C的独立集(仙人掌树形DP)
  10. STM32 KEIL 下的 printf 函数
  11. 部门管理系统_维修工单管理系统的功能介绍
  12. 微计算机原理与接口电子科技大学,西安电子科技大学考研复试微机原理与接口技术...
  13. dede文章采集管理php,DEDECMSV5.7最新自动采集伪原创插件
  14. 2.4G蓝牙耳机等穿戴蓝牙设备贴片天线方案 CA-C01
  15. SAP中CK11N成本估算的取价逻辑
  16. ISP PIPLINE(零) 知识综述预热
  17. java微信支付v3系列——6.微信支付查询订单API
  18. 使用three.js/webgl开发智慧城市场景的一些总结
  19. python 使用grpc
  20. 极客日报:同一个手机号或可注册两个微信号;第三代AirPods不再支持iPhone 6等老手机

热门文章

  1. rabbitMQ教程 spring整合rabbitMQ代码实例
  2. Mapreduce,mapper任务无输出以及相关问题解决,日志的正确用法
  3. 操作系统(2) -- 进程管理
  4. leetcode--133. 克隆图
  5. 希望PAT耗子尾汁:1014 福尔摩斯的约会 (20分)——22行代码AC
  6. 极简代码:1012 数字分类 (20分)
  7. 最全!最完整的求first集和follow的代码!!!编译原理 FIRST集和FOLLOW集的求法 代码,程序,实验报告
  8. 解决办法在安装完Nginx后服务启动失败
  9. smarty去除html标签,Smarty与脚本中的html标签爆裂
  10. cgi python windows_python cgi windows怎么办