记录学习过程,本人喜欢简洁不啰嗦:

控制鼠标

 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使用方法的更多相关文章

  1. MVC之路随记3--Html辅助方法

    概述:MVC中使用@Html.MethodName 来做很多Html的事情,简化了开发工程量,使用方便,并且易于理解 详细方法: 1.表单 <form action="/Home/Se ...

  2. mysql-笔记-控制语句/string方法

    1 case case value when [compare_value] then result [when[compare_value] then result....] [else resul ...

  3. Python记:列表方法略记

  4. iOS项目常用效果方法注意点集锦

    移动中隐藏tabBar,静止显示tabbar - (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView { // 隐藏tabbar ...

  5. jquery.autocomplete.js 两种实现方法

    <script type="text/javascript"> var v = 1; var stockInfoJson = [ { "name": ...

  6. UI线程异常处理方法

    当应用程序启动,创建了一个叫“main”的线程,用于管理UI相关,又叫UI线程.其他线程叫工作线程(Work Thread). Single Thread Model 一个组件的创建并不会新建一个线程 ...

  7. 指定某个方法在站点的Application_Start之前执行

    指定某个函数方法在站点的Application_Start之前执行:PreApplicationStartMethodAttribute 先预备一个类,用于Start时调用 public static ...

  8. 转载---HttpUrlConnection发送post请求汉字出现乱码的一个解决方法及其原因

    原文:http://blog.csdn.net/qqaazz211/article/details/52136187 在网上看到了这篇比较简单的解决方法,果然有用,特记之 解决方法是:将 out.wr ...

  9. swift向方法传数组参数的语法

    总是记不住向方法中传数组参数的语法,所以记录一下. func calculateStatistics(scores:[Int]) -> (min:Int,max:Int,sum:Int) { v ...

随机推荐

  1. c# sqlsugar,hisql,freesql orm框架全方位性能测试对比 sqlserver 性能测试

    在2022年1月份本人做过一次sqlsugar,hisql,freesql三个框架的性能测试,上次主要是测的sqlserver下的常规插入(非bulkcopy的方式数据插入),hisql与目前比较流行 ...

  2. SpringCloudAlibaba学习(解决SpringBoot初始化以及Nginx启动出错问题)

    微服务强调每个服务都是单独的数据库 在不使用微服务的情况下可以采用分布式架构,通过Template来调用远程的Rest接口 但这种方式维护起来很麻烦,而且有很多弊端. 一.环境搭建 1.首先搭建Spr ...

  3. SAP 实例 3 Context Menus

    REPORT demo_dynpro_context_menu. DATA: field1 TYPE i VALUE 10, field2 TYPE p DECIMALS 4. DATA: prog ...

  4. 关于cpu体系架构的一些有趣的故事分享

    从排查一次匪夷所思的coredump,引出各种体系架构的差异. 本文中的所有内容来自学习DCC888的学习笔记或者自己理解的整理,如需转载请注明出处.周荣华@燧原科技 1 背景 从全世界有记载的第一台 ...

  5. 常用API(Java)

    常用API Object toString方法 场景:当我们使用toString方法想要输出对象变量时,官方提供的toString方法会直接输出对象所在的地址,而不是我们想要的对象变量,所以我们要把t ...

  6. 函数式接口的概念&函数式接口的定义和函数式接口的使用

    函数式接口概念 函数式接口在Java中是指:有且仅有一个抽象方法的接口. 函数式接口,即适用于函数式编程场景的接口.而Java中的函数式编程体现就是Lambda,所以函数式接口就是可以适用于Lambd ...

  7. SpringBoot数据库管理 - 用flyway对数据库管理和迁移

    上文介绍了Liquibase,以及和SpringBoot的集成.除了Liquibase之外,还有一个组件Flyway也是经常被使用到的类似的数据库版本管理中间件.本文主要介绍Flyway, 以及Spr ...

  8. 基于图的广度优先搜索策略(耿7.11)--------西工大noj.20

    目录 代码 代码 #include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct ...

  9. 第46届ICPC澳门站 K - Link-Cut Tree // 贪心 + 并查集 + DFS

    原题链接:K-Link-Cut Tree_第46屆ICPC 東亞洲區域賽(澳門)(正式賽) (nowcoder.com) 题意: 要求一个边权值总和最小的环,并从小到大输出边权值(2的次幂):若不存在 ...

  10. Splash (渲染JS服务)介绍安装

    一. splash介绍 1.Splash 是一个带有 HTTP API 的 javascript 渲染服务.它是一个带有 HTTP API 的轻量级浏览器,使用 Twisted 和 QT5 在 Pyt ...