记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 ...
随机推荐
- Spring Security认证器实现
目录 拦截请求 验证过程 返回完整的Authentication 收尾工作 结论 一些权限框架一般都包含认证器和决策器,前者处理登陆验证,后者处理访问资源的控制 Spring Security的登陆请 ...
- Python递归函数的定义和几个小例子
递归函数 (1)什么是递归函数? 我们都知道,一个函数可以调用其他函数.如果这个函数在内部调用它自己,那么这个函数就叫递归函数. (2)递归函数的作用 举个例子,我们来计算阶乘 n! = 1 * 2 ...
- 再测云原生数据库性能:PolarDB依旧最强,TDSQL-C、GaussDB变化不大
1.摘要 近期,腾讯云数据库在文章「腾讯云TDSQL-C重磅升级,性能全面领跑云原生数据库市场」中提到,某些场景下性能有非常大的提升,且超过国内某橙色云厂商.恰好,在5月份,我们对各个厂商的云原生数据 ...
- 8.4 苹果macOS电脑如何安装Java开发环境(JDK)
和Windows电脑安装差不多. 下载 来到JDK官方下载界面,点击Java SE 8(简称JDK 8)后面的JDK下载,来到该界面,先同意协议,然后下载对应平台的JDK,我们这里下载Mac OS X ...
- 强化学习-学习笔记7 | Sarsa算法原理与推导
Sarsa算法 是 TD算法的一种,之前没有严谨推导过 TD 算法,这一篇就来从数学的角度推导一下 Sarsa 算法.注意,这部分属于 TD算法的延申. 7. Sarsa算法 7.1 推导 TD ta ...
- 在项目中导入lombok依赖自动生成有参,无参 空参 方法的注解
导入依赖 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok< ...
- Node.js精进(9)——性能监控(上)
市面上成熟的 Node.js 性能监控系统,监控的指标有很多. 以开源的 Easy-Monitor 为例,在系统监控一栏中,指标包括内存.CPU.GC.进程.磁盘等. 这些系统能全方位的监控着应用的一 ...
- 区间统计——ST算法
一.引入 先举一个小栗子. 一数组有 \(n\) 个元素,有 \(m\) 次询问(\(n, m <= 10^5\)).对于每次询问给出 \(l, r\),求出 \([l, r]\)的区间和. 有 ...
- jdbc 04: 配置连接信息
jdbc连接mysql,将需要的信息配置到文件中 package com.examples.jdbc.o4_配置连接信息; import java.sql.Connection; import jav ...
- 【一本通提高树链剖分】「ZJOI2008」树的统计
[ZJOI2008]树的统计 题目描述 一棵树上有 n n n 个节点,编号分别为 1 1 1 到 n n n,每个节点都有一个权值 w w w. 我们将以下面的形式来要求你对这棵树完成一些操作: I ...