python使用pyautogui自动化模拟鼠标、键盘操作、截屏、识别图片位置

  • 🌈所属专栏:【python】
  • 作者主页:  Mr.Zwq
  • ✔️个人简介:一个正在努力学技术的Python领域创作者,擅长爬虫,逆向,全栈方向,专注基础和实战分享,欢迎咨询!

您的点赞、关注、收藏、评论,是对我最大的激励和支持!!!🤩🥰😍


         pyautogui 是一个功能强大的Python库,用于自动化计算机上的鼠标和键盘操作。它支持Windows、macOS和Linux操作系统,并广泛应用于自动化测试、数据录入、自动化演示等场景。以下是对 pyautogui 的简介和使用方法的详细介绍:

pyautogui简介

  • 功能:pyautogui 允许用户通过编程来控制鼠标和键盘操作,模拟人类在计算机上的输入行为。
  • 用途:该库对于需要重复性操作的任务特别有用,例如表格数据的录入、游戏的自动化控制或者日常办公自动化。
  • 跨平台:由于Python的跨平台特性,pyautogui 可以在多个操作系统上运行。

pyautogui使用

安装

使用pip命令可以轻松安装pyautogui:

pip install pyautogui

基本使用

1.导入库

import pyautogui

2.鼠标控制

  • 移动鼠标
pyautogui.moveTo(x, y, duration=0)  # 将鼠标移动到屏幕的(x, y)位置,duration为移动时间(秒)
  • 点击鼠标
pyautogui.click(x=None, y=None, button='left', duration=0.1)  # 在指定位置点击鼠标(没有指定则是当前鼠标位置),button可指定左键、中键或右键
  • 滚动鼠标
pyautogui.scroll(clicks)  # 滚动鼠标滚轮,clicks为滚动的刻度数

3.键盘控制

  • 输入文本
pyautogui.typewrite(string, interval=0)  # 输入字符串,interval为每个字符之间的间隔时间
  • 按键操作
pyautogui.press('key')  # 按下一个键,'key'为要按下的键名
  • 按下和释放键
pyautogui.keyDown('shift')  
pyautogui.press('up')  
pyautogui.keyUp('shift')  # 分别用来按下、执行按键操作、释放一个键
  •  热键
pyautogui.hotkey('ctrl', 'a')  # 组合键,ctrl+a 全选

4.其它功能

  • 获取鼠标当前坐标
current_pos = pyautogui.position()  # 返回当前鼠标的(x, y)坐标
  • 获取屏幕尺寸
screen_size = pyautogui.size()  # 返回屏幕的宽度和高度
  • 获取图片在屏幕上的位置
pyautogui.locateOnScreen('1.jpg')
  • 获取屏幕截图并保存
pyautogui.screenshot('screenshot.png')  # 截全屏

pyautogui.screenshot('screenshot1.png',region=(0,0,100,100))  # 按指定区域截屏

小结:pyautogui是一个强大的Pytho库,通过模拟鼠标和键盘操作,可以实现计算机自动化任务。其丰富的功能和跨平台特性使得它在多个领域都有广泛的应用。使用PyAutoGUI可以大大提高工作效率,减少重复性劳动。


总结

感谢观看,原创不易,如果觉得有帮助,请给文章点个赞吧,让更多的人看到。🌹🌹🌹

👍🏻也欢迎你,关注我。👍🏻

如有疑问,可在评论区留言哦~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/728536.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot集成tensorflow实现图片检测服务

1.什么是tensorflow? TensorFlow名字的由来就是张量(Tensor)在计算图(Computational Graph)里的流动(Flow),如图。它的基础就是前面介绍的基于计算图的自动微分,除了自动帮你求梯度之外,它也提供了各种常见的操作(op,…

Redis通用命令详解

文章目录 一、Redis概述1.1 KEYS:查看符合模板的所有 key1.2 DEL:删除一个指定的 key1.3 EXISTS:判断 key 是否存在1.4 EXPIRE:给一个 key 设置有效期,有效期到期时该 key 会被自动删除1.5 TTL:查看一个 ke…

《梦醒蝶飞:释放Excel函数与公式的力量》4.1if函数

第4章:逻辑与条件函数 第一节4.1 if函数 在Excel中,逻辑函数用于处理基于特定条件的真假判断,它们是构建复杂公式和进行高级数据分析的基础。本章将深入探讨逻辑函数的使用方法,特别是IF函数,这是Excel中最为常用的条…

Spring Boot程序打包docker镜像

1.将springboot程序使用maven package打包出jar。 2.创建dockerfile。 FROM openjdk:8 VOLUME /tmp EXPOSE 8601 #ADD 后面的参数是项目名字 / 后面的参数是自定义的别名 ADD webflux-hello-0.0.1-SNAPSHOT.jar /webflux-hello.jar #这里的最后一个变量需要和前面起的别名相同…

构建智慧高速公路:软件管理平台业务架构解析

随着交通网络的不断完善和技术的快速发展,智慧高速公路正成为交通领域的重要发展方向。在智慧高速公路系统中,软件管理平台扮演着关键的角色,它不仅是管理各种设备和系统的核心,还承担着数据监控、故障诊断、维护管理等重要任务。…

探索序列到序列模型:了解编码器和解码器架构的强大功能

目录 一、说明 二、什么是顺序数据? 三、编码器解码器架构的高级概述: 3.1 编码器和解码器架构的简要概述: 3.2 训练机制:编码器和解码器架构中的前向和后向传播: 四、编码器解码器架构的改进: 4.1.…

1.3自然语言的分布式表示-word2vec

文章目录 0基于计数的方法的问题1什么是基于推理的方法2神经网络中单词的表示2.1 MatMul 层的实现 3简单word2vec的实现3.1 CBOW模型的结构3.1.1神经元视角3.1.2层的视角3.1.3多层共享权重时存在的问题 3.2 CBOW模型的学习3.3单词的分布式表示 代码都位于:nlp&#…

Unity 工具 之 Azure 微软 【GPT4o】HttpClient 异步流式请求的简单封装

Unity 工具 之 Azure 微软 【GPT4o】HttpClient 异步流式请求的简单封装 目录 Unity 工具 之 Azure 微软 【GPT4o】HttpClient 异步流式请求的简单封装 一、简单介绍 二、实现原理 三、注意实现 四、简单效果预览 五、案例简单实现步骤 六、关键代码 一、简单介绍 Unit…

推荐5个AI辅助生成论文、降低查重率的网站【2024最新】

一、引言 对于忙碌的学生来说,毕业论文通常是一项艰巨的任务。幸运的是,随着人工智能技术的发展,现在有一些工具可以帮助学生轻松完成论文。本文将介绍五个免费的AI工具,它们能够一键帮助你生成毕业论文,让你的学术生…

Minecraft服务端配置教程

一、下载服务端核心文件 下载 | FastMirror 无极镜像 | 我的世界核心下载 Downloads for Minecraft Forge for MinecraftForge服务端下载 MCVersions.net - Minecraft Versions Download List原版 注意,这个网站可以下载Forge水桶等插件和模组端,如果…

华为---静态路由-浮动静态路由及负载均衡(二)

7.2 浮动静态路由及负载均衡 7.2.1 原理概述 浮动静态路由(Floating Static Route)是一种特殊的静态路由,通过配置去往相同的目的网段,但优先级不同的静态路由,以保证在网络中优先级较高的路由,即主路由失效的情况下&#xff0c…

AI界的“视频滤镜”(Stable Diffusion进阶篇-TemporalKit视频风格转化),手把手教你制作原创AI视频

大家好,我是向阳 在之前的文章中我也分享过如何进行AI视频的制作,说是AI视频其实也就是通过Stable Diffusion进行视频重绘,也就是将一个视频一帧一帧重绘为自己想要的画面,然后再连贯起来成为视频。 这个东西其实比较耗费时间和…

Linux中如何通过脚本文件实现对外流量的实时监测

while true #无限循环 doclear #清除屏幕flow$( cat /proc/net/dev | awk /ens160/{print $2} ) #查看receive流量trantsmit_flow$( cat /proc/net/dev | awk /ens160/{print $10} ) #查看transimit流量external_traffic$(( flow - trantsmit_flow )) #输入流量减去输…

贾英才主任受聘担任“两个中心”专家委员会委员

近日,第二届海峡两岸中西医结合肾脏病学术大会授牌仪式在北京隆重举行。 这一盛会吸引了众多医学领域的专家学者,共同探讨中西医结合治疗肾脏病的最新进展和未来发展方向。 在此次大会上,崇文门中医医院的贾英才主任凭借其在肾脏病领域的卓…

计算机网络知识点汇总(二)

计算机网络知识点汇总 第1章计算机网络体系结构 1.1 计算机网络概述 1.1.1 计算机网络的概念 ​ 计算机网络是由若干个结点(node)和连接这些结点的链路(link)组成。网络中的结点可以是就三级、集线器、交换机、或者路由器等,网络之间通过路由器进行互联&#xf…

SFF1006A-ASEMI无人机专用SFF1006A

编辑:ll SFF1006A-ASEMI无人机专用SFF1006A 型号:SFF1006A 品牌:ASEMI 封装:TO-220F 最大平均正向电流(IF):10A 最大循环峰值反向电压(VRRM):600V 最大…

Java | Leetcode Java题解之第169题多数元素

题目: 题解: class Solution {public int majorityElement(int[] nums) {int count 0;Integer candidate null;for (int num : nums) {if (count 0) {candidate num;}count (num candidate) ? 1 : -1;}return candidate;} }

Matlab数学建模实战应用:案例3 - 投资组合优化

目录 前言 一、问题分析 二、模型建立 三、Matlab代码实现 完整代码示例 四、模型验证 五、模型应用 实例示范:投资组合优化 步骤 1:导入数据并计算统计量 步骤 2:建立优化模型并求解 步骤 3:绘制有效前沿(…

Macbook pro插硬盘没反应,Macbook pro移动硬盘读不了怎么办

为了弥补Macbook pro硬盘容量的缺失,我们有时候会使用到外接硬盘或移动硬盘。一般来说,这些硬盘都是即插即用的,可能部分要安装插件。不过,在一些特殊情况下,也会遇到插硬盘没反应等问题。本文会给大家解答Macbook pro…

网络安全:Web 安全 面试题.(XSS)

网络安全:Web 安全 面试题.(XSS) 网络安全面试是指在招聘过程中,面试官会针对应聘者的网络安全相关知识和技能进行评估和考察。这种面试通常包括以下几个方面: (1)基础知识:包括网络基础知识、操作系统知…