PyAutoGUI 自动操作控制程序

2024-02-07 19:20

本文主要是介绍PyAutoGUI 自动操作控制程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    PyAutoGUI是一个方便且功能强大的Python库,用于实现自动化操作,无论是自动化测试、数据采集还是辅助工具开发,PyAutoGUI都是一个强大而实用的工具。通过熟练掌握PyAutoGUI,我们可以大幅提升工作效率,实现自动化操作的便利性和稳定性。它主要是一个用于图像识别和鼠标/键盘控制的Python库。它提供了一组函数和方法,用于自动化屏幕上的鼠标移动、点击、拖拽和键盘输入,以及执行图像识别和处理,只要是关于自动化的操作,它都可以完成!



    以查看天气预报为例,编写如何利用 PyAutoGUI自动控制。



在这里插入图片描述



    首先通过 pyautogui.position() 方法,获取各个需要定位的坐标方向。



import pyautogui
from time import sleepdef get_position(times):for i in range(times):sleep(5)print("当前鼠标的坐标为:", pyautogui.position())get_position(10)


在这里插入图片描述



    依次获得如下10个点的坐标:



    position_start = (20,873) # 开始菜单坐标
    position_exe = (68,737) # 程序坐标
    position_1 = (483,445) # "天气趋势"坐标
    position_2 = (571,444) # "空气质量"坐标
    position_3 = (389,443) # "天气预报"坐标
    position_4 = (514,525) # "明天"坐标
    position_5 = (645,540) # "后天"坐标
    position_6 = (770,548) # "周五"坐标
    position_7 = (914,542) # "周六"坐标
    position_8 = (1048,537) # "周日"坐标



    把10个对应的坐标依次添加到 list 里,通过循环依次执行自动移动到相对应的坐标点并点击。



import pyautogui
from time import sleepdef get_position(times):
#   for i in range(times):
#      sleep(5)
#      print("当前鼠标的坐标为:", pyautogui.position())position_start = (20,873) # 开始菜单坐标
position_exe = (68,737)   # 程序坐标
position_1 = (483,445)    # "天气趋势"坐标
position_2 = (571,444)    # "空气质量"坐标
position_3 = (389,443)    # "天气预报"坐标
position_4 = (514,525)    # "明天"坐标
position_5 = (645,540)    # "后天"坐标
position_6 = (770,548)    # "周五"坐标
position_7 = (914,542)    # "周六"坐标
position_8 = (1048,537)   # "周日"坐标# 把10个对应的坐标依次添加到lst里
positions = [position_start,position_exe,position_1,position_2,position_3,position_4,position_5,position_6,position_7,position_8]def move_click():for i in positions:pyautogui.moveTo(i)sleep(0.5)             # 移动到目标位置后 到 点击 之间必须有一定的时间停顿,否则点击会执行失败pyautogui.click()sleep(2)# get_position(10)


    Demo视频如下,下一期将继续介绍 PyAutoGUI 其它更多的方法应用,例如自动化测试中滑块验证,通过算法得出缺口位置,再结合 PyAutoGUI 去执行每个点的相对移动。



PyAutoGUI 自动操作控制程序

这篇关于PyAutoGUI 自动操作控制程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/688667

相关文章

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

SpringBoot中封装Cors自动配置方式

《SpringBoot中封装Cors自动配置方式》:本文主要介绍SpringBoot中封装Cors自动配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录SpringBoot封装Cors自动配置背景实现步骤1. 创建 GlobalCorsProperties

idea中创建新类时自动添加注释的实现

《idea中创建新类时自动添加注释的实现》在每次使用idea创建一个新类时,过了一段时间发现看不懂这个类是用来干嘛的,为了解决这个问题,我们可以设置在创建一个新类时自动添加注释,帮助我们理解这个类的用... 目录前言:详细操作:步骤一:点击上方的 文件(File),点击&nbmyHIgsp;设置(Setti

Python使用DrissionPage中ChromiumPage进行自动化网页操作

《Python使用DrissionPage中ChromiumPage进行自动化网页操作》DrissionPage作为一款轻量级且功能强大的浏览器自动化库,为开发者提供了丰富的功能支持,本文将使用Dri... 目录前言一、ChromiumPage基础操作1.初始化Drission 和 ChromiumPage

利用Go语言开发文件操作工具轻松处理所有文件

《利用Go语言开发文件操作工具轻松处理所有文件》在后端开发中,文件操作是一个非常常见但又容易出错的场景,本文小编要向大家介绍一个强大的Go语言文件操作工具库,它能帮你轻松处理各种文件操作场景... 目录为什么需要这个工具?核心功能详解1. 文件/目录存javascript在性检查2. 批量创建目录3. 文件

Redis中管道操作pipeline的实现

《Redis中管道操作pipeline的实现》RedisPipeline是一种优化客户端与服务器通信的技术,通过批量发送和接收命令减少网络往返次数,提高命令执行效率,本文就来介绍一下Redis中管道操... 目录什么是pipeline场景一:我要向Redis新增大批量的数据分批处理事务( MULTI/EXE