记pyautogui使用方法
记录学习过程,本人喜欢简洁不啰嗦:
控制鼠标
1 pyautogui.moveTo(w - 100, h - 100, duration=0.25) # 立即移动到指定x, y位置坐标, duration表示移动花费的时间,0表示立即
2 pyautogui.moveRel(100, 0, duration=0.25) # 在当前位置移动
3 pyautogui.position() # 获取鼠标当前位置
4 pyautogui.dragTo() # 鼠标左键移动
5 pyautogui.dragRel() # 鼠标右键移动
6 pyautogui.click(100, 150, button='right') # 默认左键 left | right
7 pyautogui.mouseDown(476, 239) # 指定按键按下
8 pyautogui.mouseUp(476, 100) # 指定按键松开
9 pyautogui.doubleClick(100, 230) #左键双击
10 pyautogui.rightClick(1000, 200) # 鼠标右键单击
11 pyautogui.middleClick(100, 200) # 鼠标中键单击
12 pyautogui.scroll(200) # 滚轮滚动, 整数向上滚动,负数向下滚动
13
14 dragRel方法小示例:
15 time.sleep(3)
16 pyautogui.click()
17 dis = 200
18 while dis > 0:
19 pyautogui.dragRel(dis, 0, duration=0.1)
20 dis -= 5
21 pyautogui.dragRel(0, dis, duration=0.1)
22 pyautogui.dragRel(-dis, 0, duration=0.1)
23 dis -= 5
24 pyautogui.dragRel(0, -dis, duration=0.1)
图片处理
1 img = pyautogui.screenshot() # 屏幕快照
2 img.getpixel((50, 200)) # 得到图片坐标 RGB
3 pyautogui.pixelMatchesColor(50, 200, (200, 100, 100)) # 匹配当前屏幕颜色 True | False & 宽,高,RGB颜色
4 pyautogui.locateCenterOnScreen(img) # 返回图片中心坐标
5 pyautogui.locateOnScreen(img) # 完全匹配图片,未找到返回None
6 pyautogui.locateAllOnScreen(img) # 返回匹配多处不同的值 [Box(left=0, top=0, width=1920, height=1080)]
控制键盘
1 pyautogui.typewrite('hello python', 0.25) # 文本框输入内容,需要先确定焦点
2 pyautogui.typewrite(['a', 'b', 'left', 'left', 'X', 'Y']) #参考PyKeyboard属性表
3 pyautogui.keyDown('shift') # 按下某个键
4 pyautogui.press('4') # 输入内容
5 pyautogui.keyUp('shift') # 松开按键
6 pyautogui.hotkey('ctrl', 'c') # 组合键
其他方法
1 import pyautogui # 导入模块
2 pyautogui.PAUSE = 1 # 每次调用函数后暂停1秒
3 pyautogui.FAILSAFE = True # 自动防故障
4 x,y = pyautogui.size() # 获取x、y坐标
记pyautogui使用方法的更多相关文章
- MVC之路随记3--Html辅助方法
概述:MVC中使用@Html.MethodName 来做很多Html的事情,简化了开发工程量,使用方便,并且易于理解 详细方法: 1.表单 <form action="/Home/Se ...
- mysql-笔记-控制语句/string方法
1 case case value when [compare_value] then result [when[compare_value] then result....] [else resul ...
- Python记:列表方法略记
- iOS项目常用效果方法注意点集锦
移动中隐藏tabBar,静止显示tabbar - (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView { // 隐藏tabbar ...
- jquery.autocomplete.js 两种实现方法
<script type="text/javascript"> var v = 1; var stockInfoJson = [ { "name": ...
- UI线程异常处理方法
当应用程序启动,创建了一个叫“main”的线程,用于管理UI相关,又叫UI线程.其他线程叫工作线程(Work Thread). Single Thread Model 一个组件的创建并不会新建一个线程 ...
- 指定某个方法在站点的Application_Start之前执行
指定某个函数方法在站点的Application_Start之前执行:PreApplicationStartMethodAttribute 先预备一个类,用于Start时调用 public static ...
- 转载---HttpUrlConnection发送post请求汉字出现乱码的一个解决方法及其原因
原文:http://blog.csdn.net/qqaazz211/article/details/52136187 在网上看到了这篇比较简单的解决方法,果然有用,特记之 解决方法是:将 out.wr ...
- swift向方法传数组参数的语法
总是记不住向方法中传数组参数的语法,所以记录一下. func calculateStatistics(scores:[Int]) -> (min:Int,max:Int,sum:Int) { v ...
随机推荐
- bitmap技术解析:redis与roaringBitmap
bitmap的表象意义是,使用一个01标识位来表示是否的状态,可以达到节省空间和高效判定的效果.在我们的实际工作中,也有着许多的应用场景,相信了解bitmap定会给你带来一些额外的收获. 1. bit ...
- 隐私计算FATE-模型训练
一.说明 本文分享基于 Fate 自带的测试样例,进行 纵向逻辑回归 算法的模型训练,并且通过 FATE Board 可视化查看结果. 本文的内容为基于 <隐私计算FATE-概念与单机部署指南& ...
- 『忘了再学』Shell流程控制 — 34、if条件判断语句(二)
目录 1.多分支if条件语句格式 2.练习 3.说明 4.综合练习 1.多分支if条件语句格式 if [ 条件判断式1 ] then 当条件判断式1成立时,执行程序1 elif [ 条件判断式2 ] ...
- uniapp使用scroll-view与swiper组件实现tab滑动切换页面需要注意的问题
效果图: tab栏可以滑动,切换页面跟随tab栏同步滑动.这里需要注意的是使用swiper组件时,它会有一个默认的高度,你必须动态的获取数据列表的高度覆盖原来的默认高度. 下面是代码 html < ...
- Vue是怎么渲染template内的标签内容的?
我们在使用Vue做项目时,都会用到脚手架,相应的我们会在template写标签内容.那么你知道为什么会在template写标签吗?这当中经过了怎样的处理呢? <template> < ...
- 深入理解 happens-before 原则
在前面的文章中,我们深入了解了 Java 内存模型,知道了 Java 内存模型诞生的意义,以及其要解决的问题.最终我们知道:Java 内存模型就是定义了 8 个基本操作以及 8 个规则,只要遵守这些规 ...
- 【python基础】第02回 计算机基础2
上节内容回顾 1.绝对路径与相对路径 1.路径的概念 用来标识资源的位置 2.绝对路径 类似于全球GPS定位(给到任何人都可以顺利的找到相应的资源) eg: D:\aaa\a.txt 3.相对路径 需 ...
- Qt项目开发实例 (含源码)
源码传送门: 啊渊 / QT博客案例 · GitCode 目前QT的研发都是基于windows操作系统的,本文分享在国产操作系统中学QT的路线图,其实学习路线差不多,为了全面的回顾自己的学习知识,打算 ...
- linux配置svn
1.安装 yum install subversion 2.测试安装是否成功: svnserve --version 3.创建目录并配置 建立版本库目录 mkdir -pv /data/svn/svn ...
- windows 安全
Windows基础篇html { overflow-x: initial !important } :root { --bg-color: #ffffff; --text-color: #333333 ...