PyautoGui常规操作
PyautoGui常规操作
1、前置参数
1.导入数据库
from selenium.webdriver.common.action_chains import ActionChains
import pyautogui
2.自动防故障功能
默认这些功能为True,即当鼠标指针在屏幕的最左上方,程序会报错,目的是为了防止程序无法停止
pyautogui.FAILSAEE = False
3.停顿功能
指pyautogui的指令都需要暂停一秒,不影响其他指令;目的防止鼠标键盘操作过快
pyautogui.PAUSE = 1
停顿也可以使用时间睡眠操作:time.sleep(多少秒)
# time.sleep(1)
2、鼠标参数
1.获取屏幕分辨率
print(pyautogui.size()) # 返回所用显示器的分辨率;输出:size(width=1920,height=1080)
width,height = pyautogui.size()
print(width,height) # 1920 1080
2.鼠标移动事件
移动到指定位置
# 将鼠标移动到指定的坐标:duration的作用是设置移动时间,所有的gui函数都有这个参数,都是可选参数
# 向右移动100px,向下移动100px,这个过程持续1秒钟;
pyautogui.moveTo(100,100,duration = 1)
鼠标位置
print(pyautogui.position()) # 当前鼠标位置,输出:point(x=200,y=200)
4.鼠标点击事件
鼠标单击
pyautogui.click(10,10) # 鼠标点击指定位置,默认左键
pyautogui.click(10,10,button='left') # 单击左键
pyautogui.click(400,300,button='right') # 单击右键
pyautogui.click(299,400,button = 'middle') # 单击中间
鼠标双击
pyautogui.doubleClick(10,10) # 指定位置,双击左键
pyautogui.rightClick(10,10) # 指定位置,双击右键
pyautogui.middleClick(10,10) # 指定位置,双击中键
鼠标控制拖动事件
# 拖动到指定位置
# 将鼠标拖动到指定的坐标;
pyautogui.dragTo(200,300,duration =1)# 按方向拖动
pyautogui.dragRel(100,200,duration=2) # 第一个是左右移动像素值(正数向右,负数向左),第二个是上下移动像素值
鼠标滚轮
# 控制鼠标滚动的函数是scroll(),正数向下滚动多少单位,负数向上滚动多少单位
pyautogui.scroll(300) # 向下滚动300个单位
3、键盘事件
1.键盘输入函数
- pyautogui.keyDown(): 模拟按键按下
- pyautogui.keyUp(): 模拟按键放开
- pyautogui.press(): 模拟一次按键
- pyautogui.typewrite(‘this’,0.5): 第一参数是输入内容,第二个参数是每个字符间的间隔事件
- pyautogui.typewrite([‘T’,‘h’,‘i’,‘s’]): typewrite还可以传入单字母的列表
pyautogui.keyDown('shift') # 按下shift
pyautogui.keyUp('shift') #放开shift
pyautogui.press('s') #按一次‘4’键
pyautogui.typewrite(['T','i','s','left','left','h',]) # 输出:this
2.快捷键
例如按ctrl+c;
pyautogui.keyDown('ctrl')
pyautogui.press('c')
pyautogui.keyUp('ctrl')
优化后的快捷键;
pyautogui.hotkey('ctrl','c')
3.屏幕处理
屏幕截图
pyautogui提供了一个方法screenshot(),可以返回一个Pillow的image对象
im = pyautogui.screenshot()
im.getpixel((500,500)) # 检测屏幕坐标(500,500)这一点像素的颜色,是一个RGB元组
pyautogui.pexelMatchesColor(500,500,(12,120,200)) # 是一个对比函数,对比的是 屏幕是上(500,500)这一点像素的颜色,与所给的元素是否相同
im.save('屏幕截图.png')
4.特殊按键
键盘字符串 | 说明 |
---|---|
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) |
PyautoGui常规操作相关推荐
- 图像腌膜Mask的常规操作你真的信手拈来吗?
点击上方↑↑↑"视学算法"关注我 来源:公众号 行走的机械人 授权 我对图像腌膜的含义一直有些模糊,今天写了几行代码,证明了我这模糊的印象倒是正确的.今天借一个给图片添加水印的小例 ...
- 网工的常规操作:配置动态NAT
网工常规操作:配置动态NAT 实验目的 1. 理解动态NAT的转换原理 2. 掌握动态NAT的配置方法 实验拓扑 实验需求 1. 根据实验拓扑图,完成设备的基本配置: 2. 在R2上创建Loopbac ...
- python如何从一个dataframe提取相应的行组成一个新的dataframe_Python|专题(1)——数据处理常规操作集(1)...
大家好!好久不见!适逢国庆,先祝我亲爱的祖国七十周年生日快乐! 这一系列文章是针对最近在实习中做的一些数据预处理操作的整理.我们希望通过它们,带领大家了解和熟悉一些python做数据清洗,数据整合等的 ...
- unix 只有root 可以使用chown吗_chmod 777 是开发的常规操作吗?
chmod 777 是开发的常规操作吗? 答案很明显:是的 nginx 403 Forbidden 给777权限试下吧? 文件没有写权限 给777权限试下吧? Supervisord 使用root用 ...
- ubuntu mysql 防火墙_mysql、ubuntu系统防火墙常规操作
mysql.ubuntu系统防火墙常规操作 编辑:006 时间:2020-02-11 mysql: 数据库操作 连接数据库: mysql -u username -p 创建数据库: creat ...
- FTP服务器常规操作
导读 FTP协议是Internet文件传输的基础,它是由一系列规格说明文档组成,目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据.下面就由我给大家简单介绍一下 ...
- 快视频:剽窃了B站的数据库?360的常规操作了。
转自:https://zhuanlan.zhihu.com/p/33887437 这些天,一些UP主惊讶地发现,在一款自己从未使用过的视频网站上,出现了自己的视频和同样用户的ID.更离谱的是,使用自己 ...
- OpenShift 4 - Fedora CoreOS (5) - CoreOS的常规操作
<OpenShift 4.x HOL教程汇总> 文章目录 常规操作 查看CoreOS操作系统信息 查看网络配置 修改IP Docker 环境 podman 使用toolbox 什么是too ...
- Mongodb常规操作【一】
Mongodb是一种比较常见的NOSQL数据库,数据库排名第四,今天介绍一下Net Core 下,常规操作. 首先下C# 版的驱动程序 "MongoDB.Driver",相关依赖包 ...
最新文章
- 【建站系列教程】3.2、ajax使用精讲
- 失败 安装scikit_scikit-learn0.22版本最新发布
- mongodb 压缩——3.0+支持zlib和snappy
- HDU 3264 Open-air shopping malls
- php memcache 封装类,php 封装memcache类
- python访问注册表_python读取注册表中值的方法
- 送你一份后端必备的 Git 分支开发规范指南
- 电厂运维的cis数据_科技驱动升级,各类智慧电厂技术大盘点
- python获取当前线程_Python爬虫(线程,进程)
- mysql 重置密码 win_window下重置mysql用户密码
- 侯策:如何突破前端开发技术瓶颈
- 【转】Swig 使用指南
- Dota2 无法连接至steam网络 【已解决】
- 进入BeOS的花花世界 系列五
- matlab声音处理
- 币安智能链监听日志事件
- GSMArena魅族mx四核评测全文|去除英文|
- ANGELABABY独家呈现——BE STUPID.有态度 够勇敢
- 如何高效的使用便利贴 win10便签贴工具居然可以这么好用
- uniApp确认提示框