pyautogui 文档(二):鼠标控制

0,0       X increases -->
+---------------------------+
|                           | Y increases
|                           |     |
|   1920 x 1080 screen      |     |
|                           |     V
|                           |
|                           |
+---------------------------+ 1919, 1079

屏幕分辨率大小由size()函数返回为两个整数的元组。position()函数返回鼠标光标的当前X和Y坐标。

>>> pyautogui.size()
(1920, 1080)
>>> pyautogui.position()
(187, 567)

这是一个简短的Python 3程序,它将不断打印出鼠标光标的位置:

#! python3
import pyautogui, sys
print(‘Press Ctrl-C to quit.‘)
try:
    while True:
        x, y = pyautogui.position()
        positionStr = ‘X: ‘ + str(x).rjust(4) + ‘ Y: ‘ + str(y).rjust(4)
        print(positionStr, end=‘‘)
        print(‘\b‘ * len(positionStr), end=‘‘, flush=True)
except KeyboardInterrupt:
    print(‘\n‘)

onScreen()函数:检查屏幕上是否有XY坐标

>>> pyautogui.onScreen(0, 0)
True
>>> pyautogui.onScreen(0, -1)
False
>>> pyautogui.onScreen(0, 99999999)
False

moveTo():将鼠标光标多少秒内移动到到您传递的X和Y整数坐标

>>> pyautogui.moveTo(100, 200,1)   # moves mouse to X of 100, Y of 200.
>>> pyautogui.moveTo(None, 500,2)  # moves mouse to X of 100, Y of 500.
>>> pyautogui.moveTo(600, None,3)  # moves mouse to X of 600, Y of 500.

(如果持续时间小于pyautogui.MINIMUM_DURATION移动将是即时的。默认情况下,pyautogui.MINIMUM_DURATION为0.1。)

move():将鼠标光标相对于其当前位置移动几个像素

dragTo()drag():点击鼠标按住拖动至指定位置

>>> pyautogui.dragTo(100, 200, button=‘left‘)     # drag mouse to X of 100, Y of 200 while holding down left mouse button
>>> pyautogui.dragTo(300, 400, 2, button=‘left‘)  # drag mouse to X of 300, Y of 400 over 2 seconds while holding down left mouse button
>>> pyautogui.drag(30, 0, 2, button=‘right‘)   # drag the mouse left 30 pixels over 2 seconds while holding down the right mouse button

click():模拟鼠标当前位置的单个鼠标左键单击。“点击”定义为按下按钮然后将其释放。

>>> pyautogui.click()  # click the mouse

moveTo()在单击之前组合调用,请传递xy关键字参数的整数:

>>> pyautogui.click(x=100, y=200,button=‘right‘,clicks=3, interval=0.25) # 移动至(100,200)右击3次,每次讲0.25秒

doubleClick():双击鼠标左键

mouseDown():按下鼠标

mouseUp():松开鼠标

pyautogui.doubleClick(x,y,interval,button)
pyautogui.mouseDown(button=‘right‘)
pyautogui.mouseUp(button=‘right‘, x=100, y=200)

鼠标滚动

可以通过调用scroll()函数并传递整数个“点击”来滚动来模拟鼠标滚轮。“点击”中的滚动量因平台而异。(可选)可以传递整数xy关键字参数,以便在执行滚动之前移动鼠标光标。例如:

>>> pyautogui.scroll(10)   # scroll up 10 "clicks"
>>> pyautogui.scroll(-10)  # scroll down 10 "clicks"
>>> pyautogui.scroll(10, x=100, y=100)  # move mouse cursor to 100, 200, then scroll up 10 "clicks"

在OS X和Linux平台上,PyAutoGUI还可以通过调用hscroll()函数来执行水平滚动。例如:

>>> pyautogui.hscroll(10)   # scroll right 10 "clicks"
>>> pyautogui.hscroll(-10)   # scroll left 10 "clicks"

scroll()函数是一个包装器vscroll(),用于执行垂直滚动。

参考:https://pyautogui.readthedocs.io/en/latest/mouse.html#mouse-scrolling

原文地址:https://www.cnblogs.com/gexbooks/p/10789565.html

时间: 2024-11-05 23:26:50

pyautogui 文档(二):鼠标控制的相关文章

centos7的基础文档二

centos7基础文档二 一.centos7的服务控制 1. 服务脚本文件 systemctl对于Linux来说,就是一个init程序,可以作为sysVinit和Upstat的替代. centos7的服务脚本存放在:/usr/lib/systemd/,有系统(system)命令和用户(users)命令之分,像需要开机不登录的就能运行的服务存在系统的服务里,即:/usr/lib/systemd/system目录下,每一个服务以.server结尾.一般会分为三个部分:[unit][service][

Nginx 安装文档 (二)PHP

下载.编译安装 wget http://cn2.php.net/distributions/php-5.4.7.tar.gz tar zvxf php-5.4.7.tar.gz cd php-5.4.7 ./configure --prefix=/usr/local/php  --enable-fpm --with-mcrypt --enable-mbstring --disable-pdo --with-curl --disable-debug  --disable-rpath --enabl

web开发规范文档二

头部        header\hd 内容块      content\con\bd text txt title 尾部        footer 导航        nav\menu sub-nav\sub-menu 侧栏        side-con 栏目        item 外容器      wrapper\sprite 左右中      left\right\center 上下        top\bot 登录        login-bar 标志        logo

脚本化文档(二)

获取和设置非标准HTML属性:Element类型还定义了getAttribute()个setAttribute()方法来查询和设置非标准的HTML属性.也可以用来查询和设置XML文档中元素上的属性.这些方法和前面的基于API之间的区别有:1)属性都被看做是字符串.getAttribute()不返回数值.布尔值或对象:2)方法使用标准属性名,甚至当这些名称为JavaScript保留字时也不例外.对HTML元素来说,属性名不区分大小写. hasAttribute()和removeAttribute(

Docx 生成word文档二

1 /// <summary> 2 /// 生产word 文档 3 /// </summary> 4 public class GenerateWord 5 { 6 /// <summary> 7 ///模板地址 8 /// </summary> 9 public string TempPath { get; set; } 10 11 /// <summary> 12 /// 保存地址 13 /// </summary> 14 pub

c#中操作word文档-二、比较全的一份示例

最近两天研究了一下如何使用VS2008(C#语言)输出Word文档.以下是几点总结: 1.非常简单. 2.开发及运行环境要求.操作系统为:WindowsXP(安装.net framework2.0)/Vista/Win7:在操作系统必须安装Word2003完全安装版.这里必须要强调是Word2003完全安装版,因为软件开发及运行都需要一个com组件:Microsoft word 11.0 Object Library.如果不是Word2003完全安装版,可以下载这个com组件,并手动的安装这个c

翻译qmake文档(二) Getting Started

上一篇文章:  翻译qmake文档(一) qmqke指南和概述 原英文文档: http://qt-project.org/doc/qt-5/qmake-tutorial.html 本教程教讲授qmake基础知识.这个手册里的其它专题包含更详细的使用qmke信息. 从简单开始 假设你已经完成了应用程序的基本实现,并且你创建了下边的文件: hello.cpp hello.h main.cpp qt分布的目录 examples/qmake/tutorial 中,你可以找到这些文件.你只需要知道的另一件

solr 文档二

SOLR 5.5.5文档 参考博文: http://blog.csdn.net/matthewei6/article/details/50620600 作者:毛平 时间:2018年1月15日 17:36:22 环境搭建 solr版本5.5.5,可以独立部署,使用默认的Jetty启动. 1. 准备条件 环境:JDK需要1.7以上,最好是1.8 下载软件包: 使用清华大学的镜像包: https://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/5.5

【swupdate文档 二】许可证

许可证 SWUpdate是免费软件.它的版权属于Stefano Babic和其他许多贡献代码的人(详情请参阅实际源代码和git提交信息). 您可以根据自由软件基金会发布的GNU通用公共许可证第2版的条款重新分发SWUpdate和/或修改它. 它的大部分还可以根据您的选择,在GNU通用公共许可证的任何后续版本下发布--有关例外情况,请参阅个别文件. 为了更容易地表示许可证,源文件中的许可证头将被替换为对由Linux基金会的SPDX项目[1]定义的唯一许可证标识符的一行引用. 例如,在源文件中,完整

CAD图纸文档加密安全实用的操作方法,外发图纸文档使用权限控制,湖南风奥科技

互联网时代,企业之间的竞争核心是原创产品设计创作的竞争,也是版权所有之间的较量,这对于研发设计行业以及安全意识较高的企业来说都是至关重要的.那么对于设计行业来说,如何对企业的设计图纸进行加密更安全? 接下来,风奥科技的小编就与大家具体分析一下,企业CAD图纸是如何实现加密的? 首先企业根据自身的加密需求,去考察选择市面上的加密软件,然后根据需求以及安全性选择适合自己企业环境的加密软件,这里,我们以金甲企业加密软件为例,具体说说,使用金甲企业加密软件如何来实现对CAD设计图纸加密? 为什么要以风奥