一、前置参数

自动 防故障功能​​​​​​​


# 默认这项功能为True, 这项功能意味着:当鼠标的指针在屏幕的最坐上方,程序会报错;目的是为了防止程序无法停止pyautogui.FAILSAFE =False

停顿功能

# 意味着所有pyautogui的指令都要暂停一秒;其他指令不会停顿;这样做,可以防止键盘鼠标操作太快;pyautogui.PAUSE = 1

二、 鼠标参数

获取屏幕分辨率

print(pyautogui.size()) # 返回所用显示器的分辨率; 输出:Size(width=1920, height=1080)width,height = pyautogui.size()print(width,height) # 1920 1080

鼠标移动事件,移动到指定位置

# 将鼠标移动到指定的坐标;duration 的作用是设置移动时间,所有的gui函数都有这个参数,而且都是可选参数;# 向右移动100px,向下移动500px, 这个过程持续 1 秒钟;pyautogui.moveTo(100,300,duration=1)

鼠标位置

print(pyautogui.position())   # 得到当前鼠标位置;输出:Point(x=200, y=800)

鼠标点击事件

单击


# 点击鼠标pyautogui.click(10,10) # 鼠标点击指定位置,默认左键pyautogui.click(10,10,button='left') # 单击左键pyautogui.click(1000,300,button='right') # 单击右键pyautogui.click(1000,300,button='middle') # 单击中间

鼠标双击

pyautogui.doubleClick(10,10) # 指定位置,双击左键pyautogui.rightClick(10,10) # 指定位置,双击右键pyautogui.middleClick(10,10) # 指定位置,双击中键

鼠标点击与释放

pyautogui.mouseDown() # 鼠标按下pyautogui.mouseUp() # 鼠标释放

鼠标控制拖动事件

# 拖动到指定位置# 将鼠标拖动到指定的坐标;duration 的作用是设置移动时间,所有的gui函数都有这个参数,而且都是可选参数pyautogui.dragTo(100,300,duration=1)# 按方向拖动# 向右拖动100px,向下拖动500px, 这个过程持续 1 秒钟pyautogui.dragRel(100,500,duration=4) # 第一个参数是左右移动像素值,第二个是上下

鼠标滚轮

# 控制鼠标滚动的函数是scroll(), 传入一个整数的参数,说明向上或向下滚动多少个单位;单位根据操作系统不同而不同pyautogui.scroll(300) # 向下滚动300个单位;

三、 键盘事件

键盘输入函数

  • pyautogui.keyDown() : 模拟按键按下;
  • pyautogui.keyUp() : 模拟按键释放;
  • pyautogui.press() : # 就是调用keyDown() & keyUp(),模拟一次按键;
  • pyautogui.typewrite('this',0.5) : 第一参数是输入内容,第二个参数是每个字符间的间隔时间;
  • pyautogui.typewrite(['T','h','i','s']):typewrite 还可以传入单字母的列表;

键盘事件

pyautogui.keyDown('shift') # 按下shiftpyautogui.press('4') # 按下 4pyautogui.keyUp('shift') # 释放 shift

缓慢输出

pyautogui.typewrite('$*……%……¥', 0.5)

键盘特殊顺序输出

pyautogui.typewrite(['T','i','s','left','left','h',])   # 输出:This

特殊按键

键盘字符串 说明
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…. f12 F1…….F12键
volumemute, volumedown,volumeup 声音变大变小静音(有些键盘没有)
pause PAUSE键,暂停键
capslock CAPS LOCK 键
numlock NUM LOCK 键
scrolllock SCROLLLOCK 键
insert INSERT键
printscreen PRINT SCREEN键
winleft, winright Win键(windows )
command command键(Mac OS X )
option option(Mac OS X)

快捷键

如果我们需要模拟复制的快捷键 ctrl + c ,如果用前面的方法,则代码为:

pyautogui.keyDown('ctrl')pyautogui.keyDown('c')pyautogui.keyUp('c')pyautogui.keyUp('ctrl')

优化后

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

四、 屏幕处理

屏幕截图

pyautogui提供了一个方法screenshot(),可以返回一个Pillow的image对象

常用参数

im = pyautogui.screenshot() # 返回屏幕的截图,是一个Pillow的image对象im.getpixel((500, 500)) # 返回im对象上,(500,500)这一点像素的颜色,是一个RGB元组pyautogui.pixelMatchesColor(500,500,(12,120,400)) # 是一个对比函数,对比的是屏幕上(500,500)这一点像素的颜色,与所给的元素是否相同;

截图操作

im = pyautogui.screenshot()im.save('屏幕截图.png')

PyautoGui常用教程(鼠标、键盘)相关推荐

  1. PyautoGui 常用教程(一篇就够)

    PyautoGui 一.前置参数 自动 防故障功能 停顿功能 二. 鼠标参数 2.1 获取屏幕分辨率 2.2 鼠标移动事件 2.3 鼠标点击事件 三. 键盘事件 3.1 键盘输入函数 3.2 键盘特殊 ...

  2. WebDriver常用的鼠标/键盘操作

    注:driver为一个WebDriver的实例,xpath为一个元素的xpath字符串,在本文中一律采用xpath的方式定位元素 1.鼠标右键点击操作: Actions action = new Ac ...

  3. python调用键盘_Python直接控制鼠标键盘

    Python直接控制鼠标键盘 之前因为期末的原因已经很久没写博客了,今天博主发现一个好玩的模块PyAutoGUI,借助它可以使用Python脚本直接控制键盘鼠标,感觉可以解决很多无聊的机械运动.这里记 ...

  4. python鼠标键盘操作(模拟手机抖音、快手浏览)

    利用pyautogui实现模拟鼠标键盘的操作 获取屏幕尺寸 screenWidth, screenHeight = pyautogui.size() 鼠标点击 pyautogui.click(158, ...

  5. python教程99--控制鼠标键盘模块 pyautogui

    1.安装: pip install pyautogui 官方网站: pyautoguihttp://pyautogui.readthedocs.io/en/latest/ 2.介绍: PyAutoGU ...

  6. pyautogui 鼠标键盘自动化 库的中文版

    PyAutoGUI--让所有GUI都自动化 原文: https://pyautogui.readthedocs.io/en/latest/ ,Python自动化工具,更适合处理GUI任务,网页任务推荐 ...

  7. Python基础之pyautogui模块(详细总结鼠标键盘操作)

    Python基础之鼠标操作 文章目录 Python基础之鼠标操作 1. GUI 控制功能 1.1 自动 防故障功能 1.2 停顿功能 2. 鼠标操作 2.1 控制鼠标移动 2.2 控制鼠标点击 2.3 ...

  8. 7-python库之-pyautogui鼠标键盘控制、图片位置查找

    还是在自动化上面的应用,对于web的测试可以使用selenium来获取元素,进行按键控制或者文字输入,模拟用户操作实现自动化.可是对于非web的win桌面应用,我们就没办法了,这时候就需要向按键精灵那 ...

  9. python怎么控制鼠标_Python使用pyautogui控制鼠标键盘

    安装pyautogui模块 在 Windows 上,不需要安装其他模块. 在 OS X 上,运行 sudo pip3 install pyobjc-framework-Quartz,sudo pip3 ...

最新文章

  1. 关于node.js的误会
  2. 7600和6500的一些常见问题
  3. UVa 10844 (大数)
  4. 大小端模式,stm32采用小端模式
  5. ckfinder 图片预览 有的显示有的不显示_Python学习之图片显示
  6. boost库在ubuntu下的安装
  7. LeetCode 1222. 可以攻击国王的皇后(set)
  8. java 注解的使用
  9. [Tjoi2016Heoi2016]排序[01序列]
  10. Java Collection小结
  11. OCR 脱机手写汉字识别与印刷汉字识别
  12. echarts柱状图显示百分比
  13. 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
  14. 快解析外网如何访问内网共享服务器
  15. 菜鸟教程之html5学习,Canvas画布、渐变,数学公式、符号的书写
  16. 水洼数 DFS 蓝桥杯 java代码
  17. linux 怎么撤销移动命令,Linux的常用命令
  18. python123身份证号掩盖出生日期_身份证号转变为出生日期
  19. 中科创达邹鹏程:与openEuler的结缘并非偶然,操作系统的未来离不开创新
  20. 2019年昆明理工大学计算机设计大赛,昆明理工大学计算中心网站

热门文章

  1. 微信小程序点赞成功,取消点赞、评论。
  2. 超简单!只需四步将照片处理成手工素描
  3. 2019年,一个人最好的生活状态
  4. iOS6下关于屏幕旋转的控制
  5. 【JSON】谷歌浏览器JSON可视化插件:JSON-Handle
  6. Project2019安装步骤
  7. 旅游指南之九----风景看尽大西北
  8. UBI,MTD(Memory Technology Device),raw flash,emmc,Flash,Block Device
  9. Gradle入门(五)——Gradle其它模块与Plugin插件详解
  10. 12:计算2的N次方