pyAutoGUI 模块主要功能介绍-(1)鼠标功能

鼠标控制功能介绍

pyAutoGUI 是一个跨平台的 Python 库,用于自动化控制鼠标和键盘操作,支持 Windows、macOS 和 Linux。它可以模拟用户输入、捕获屏幕截图、识别图像位置,并显示消息框,常用于 GUI 测试、自动化脚本和机器人过程自动化(RPA)。以下是对 pyAutoGUI 鼠标功能的详细介绍,包含功能描述和代码示例。

安装方式 :pip install pyautogui

注意 :pyAutoGUI 具有安全机制,将鼠标移到屏幕四角可中止操作。以下示例代码假设已导入 import pyautogui。

1. 鼠标控制功能

pyAutoGUI 提供丰富的鼠标操作,包括获取位置、移动、点击、拖拽和滚动。

1.1 获取屏幕分辨率

  • 功能 :size() 返回屏幕分辨率 (width, height) 元组。

  • 示例 :

    python 复制代码
    screen_width, screen_height = pyautogui.size()
    print(f"屏幕分辨率: {screen_width} x {screen_height}")

1.2 获取鼠标位置

  • 功能 :position() 返回当前鼠标位置 (x, y) 元组。

  • 示例 :

    python 复制代码
    current_x, current_y = pyautogui.position()
    print(f"当前鼠标位置: ({current_x}, {current_y})")

1.3 检查坐标是否在屏幕内

  • 功能 :onScreen(x, y) 返回坐标是否在屏幕内 (True/False)。

  • 示例 :

    python 复制代码
    is_on_screen = pyautogui.onScreen(100, 100)
    print(f"坐标 (100, 100) 是否在屏幕内: {is_on_screen}")

1.4 移动鼠标到绝对坐标

  • 功能 :moveTo(x, y, duration=0, tween=pyautogui.linear) 移动鼠标到指定坐标,支持动画。

  • 示例 :

    python 复制代码
    pyautogui.moveTo(100, 200, duration=1)  # 1秒内移动到 (100, 200)

1.5 相对移动鼠标

  • 功能 :move(xOffset, yOffset, duration=0, tween=pyautogui.linear) 按相对偏移移动鼠标。

  • 示例 :

    python 复制代码
    pyautogui.move(50, -30, duration=0.5)  # 向右50像素、向上30像素,耗时0.5秒

1.6 模拟鼠标点击

  • 功能 :click(x=None, y=None, clicks=1, interval=0, button='left') 模拟点击,支持多击和左右键。

  • 示例 :

    python 复制代码
    pyautogui.click(100, 100, clicks=2, button='right')  # 在 (100, 100) 右键双击

1.7 模拟双击

  • 功能 :doubleClick(x=None, y=None, button='left') 模拟鼠标双击。

  • 示例 :

    python 复制代码
    pyautogui.doubleClick()  # 当前位置双击

1.8 拖拽到绝对坐标

  • 功能 :dragTo(x, y, duration=0, button='left') 按住鼠标拖拽到指定坐标。

  • 示例 :

    python 复制代码
    pyautogui.dragTo(300, 400, duration=1, button='left')  # 按住左键拖到 (300, 400)

1.9 相对拖拽

  • 功能 :drag(xOffset, yOffset, duration=0, button='left') 按相对偏移拖拽。

  • 示例 :

    python 复制代码
    pyautogui.drag(200, 0, duration=0.5)  # 向右拖200像素

1.10 模拟滚轮

  • 功能 :scroll(amount, x=None, y=None) 模拟鼠标滚轮滚动,正数向上,负数向下。

  • 示例 :

    python 复制代码
    pyautogui.scroll(10)  # 向上滚动10单位
相关推荐
高洁014 小时前
数据同化与动态状态估计:让孪生持续贴合现实
人工智能·python·深度学习·transformer·迁移学习
通信仿真爱好者4 小时前
第【139】期--基于深度学习的OFDM信道估计方法研究--python完整代码
python·深度学习·ofdm·信道估计
威哥爱编程4 小时前
模拟面试智能体开发实战 07:答完一题就点评一题,结构化输出给分建议,让每道题都变成复盘
python·agent·harmonyos
cpolar技术支持4 小时前
中文文件名排序跟拼音对不上:os.listdir 返回的是文件系统顺序,三个中文名按字节排结果正好相反
python·文件系统·cpolar·编码·排序
Thanks_ks4 小时前
【第 008 讲】在终端中运行 Python 程序:交互模式与脚本模式 | 绝对路径与相对路径 | 以模块方式运行 | 常见报错的识别与排查
python·异常处理·终端·脚本·命令行·cmd·python 解释器
威哥爱编程5 小时前
模拟面试智能体开发实战 08:总评报告先过三道闸,防泄题防夸大防错建议,才敢发到候选人手上
python·agent·harmonyos
郝学胜-神的一滴5 小时前
LangChain Skill 实现(渐进披露 On-Demand Skill,LangChain 官方 Deep Agent Skill 模式)
开发语言·python·langchain·numpy
Rattenking5 小时前
OpenCV 轨迹栏操作和键盘响应操作
人工智能·opencv·计算机外设
投图匠15 小时前
十种不同风格的 CTP接口 框架
开发语言·python
2601_9679801116 小时前
深入理解词向量算法及其在Python中的实践
python·word2vec·glove·fasttext·词向量