记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 ...
随机推荐
- 重学ES系列之拓展运算符
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 关于使用 koa路由与mysql模块, ctx.body获取不到值的问题
var Koa = require('koa');var Router = require('koa-router' );var bodyParser = require('koa-bodyparse ...
- 全新升级的AOP框架Dora.Interception[6]: 实现任意的拦截器注册方式
Dora.Interception提供了两种拦截器注册方式,一种是利用标注在目标类型.属性和方法上的InterceptorAttribute特性,另一种采用基于目标方法或者属性的调用表达式.通过提供的 ...
- 初学python常用,python模块安装和卸载的几种方法
兄弟们常常因为遇到模块不会安装,或者遇到报错就懵了,就很耽误学习进度,今天我们就一次性了解Python几种安装模块的方法~不过~ 实在是懒得看 点击此处找管理员小姐姐手把手教你安装 一.命令提示符窗口 ...
- 详解HashMap源码解析(下)
上文详解HashMap源码解析(上)介绍了HashMap整体介绍了一下数据结构,主要属性字段,获取数组的索引下标,以及几个构造方法.本文重点讲解元素的添加.查找.扩容等主要方法. 添加元素 put(K ...
- Codeforces Round #802 (Div. 2)
题集链接 A Optimal Path 水 代码 #include <bits/stdc++.h> #define endl "\n" using namespace ...
- Eclipse拷贝动态的web工程
1.选中需要拷贝的工程,CTRL+C,然后CTRL+V 2.在web动态工程中,还需要选中新拷贝工程,右键选中properties,然后搜索web,--->Web Project Setttin ...
- Spring知识点详解
1.Spring 概述 1.1.Spring 的概念和特点 Spring 是一个轻量级的控制反转(IoC)和面向切面(AOP)的开源容器框架,它是由 Rod Johnson(音乐学博士)所创建,其核心 ...
- vue3代码编写
vue3代码编写 团队内的vue3已经升级一年,在这一年中vue也在不停的更新,为了最大化组合式api带来的优势,便需要合理规范代码的编写方式- 1.从vue2到vue3 vue2组件采用配置式API ...
- 5-17 ELK 日志采集查询保存
ELK简介 什么是ELK ELK: E:Elasticsearch 全文搜索引擎 L:logstash 日志采集工具 K:Kibana ES的可视化工具 ELK是当今业界非常流行的日志采集保存和查询的 ...