pyautogui自动化鼠标键盘操作

pyautogui,用来写自动化脚本,比按键精灵更方便。pyautogui.position()可以获取当前鼠标位置。pyautogui不支持中文输入,利用 pyperclip从剪切板粘贴输入。

# -*- coding: utf-8 -*-
import time
import os
import traceback
import logging
import pyautogui
from logging.handlers import RotatingFileHandler
import pyperclip
pos={"H15":(724,507)
,"D01":(362,507)
,"ELY01":(362,507)
,"ELY36":(486,739)
,"C01":(358,350)}
h=(742-507)/9
w=60
def set_input(value):with pyautogui.hold('ctrl'):  # Press the Shift key down and hold it.pyautogui.press(['a'])  # Press the left arrow key 4 times.pyperclip.copy(value)time.sleep(0.3)pyautogui.hotkey('Ctrl', 'V')
def fg():mouse_click(505,217)mouse_click(549,426)#open fgset_input("#F95E5E")mouse_click(457,441)#open fg
def fg_clear():mouse_click(505,217)mouse_click(549,426)#open fgset_input("#000000")mouse_click(457,441)#open fg
def mouse_click(x,y):pyautogui.moveTo(x,y)#open fgpyautogui.click()time.sleep(0.3)
def bg_clear():mouse_click(557,217)#open fgmouse_click(549+52,426)#open fgset_input("#FFFFFF")mouse_click(457,441)#open fg
def bg():mouse_click(557,217)#open fg# time.sleep(0.200)mouse_click(549+52,426)#open fgset_input("#F95E5E")mouse_click(457,441)#open fg
def bj():mouse_click(1083,224)#open fgmouse_click(908,238)#open fgset_input("1")mouse_click(1012,299)#open fgset_input("#32F92C")mouse_click(1008,341)#open fgset_input("#32F92C")mouse_click(1167,432)#open fg# mouse_click(457,441)#open fg
def gs(value):mouse_click(411,257)#open fgset_input(value)mouse_click(330,261)#open fg
def main():fg()bg()
def toggle_one(x,y):logging.info(["pos",x,y])mouse_click(x,y)fg()bg()bj()
def toggle_c():(x0,y0)=pos["C01"]x=x0y=y0i=1while True:toggle_one(x,y)istr="%02d" % iv="=[公式].[if] where [设备编号]='C"+istr+"'"logging.info(v)gs(v)x=x+w*2i+=1if i>5:break
def toggle_d():(x0,y0)=pos["D01"]x=x0y=y0i=1while True:toggle_one(x,y)istr="%02d" % iv="=[公式].[if] where [设备编号]='D"+istr+"'"logging.info(v)gs(v)y=y+hi+=2if i>13:breakx=x0+w*2y=y0i=2while True:toggle_one(x,y)istr="%02d" % iv="=[公式].[if] where [设备编号]='D"+istr+"'"gs(v)y=y+hi+=2if i>14:break  
def toggle_ely1():(x0,y0)=pos["ELY01"]x=x0y=y0num=1for j in range(5):y=y0for i in range(7):toggle_one(x,y)istr="%02d" % numv="=[公式].[if] where [设备编号]='ELY"+istr+"'"logging.info(v)gs(v)y=y-hnum+=1x=x+w*2
def toggle_ely36():(x0,y0)=pos["ELY36"]x=x0y=y0num=36for j in range(2):y=y0for i in range(7):toggle_one(x,y)istr="%02d" % numv="=[公式].[if] where [设备编号]='ELY"+istr+"'"logging.info(v)gs(v)y=y-hnum+=1if num>48:returnx=x-w*2def toggle_h():(x0,y0)=pos["H15"]x=x0y=y0i=15while True:toggle_one(x,y)v="=[公式].[if] where [设备编号]='H"+str(i)+"'"logging.info(v)gs(v)y=y+hi+=2if i>33:breakx=x0+w*2y=y0i=16while True:toggle_one(x,y)v="=[公式].[if] where [设备编号]='H"+str(i)+"'"gs(v)y=y+hi+=2if i>34:break
if __name__=="__main__":import loggingimport syshandlers=[RotatingFileHandler(filename="report.log", maxBytes=10*1024*1024, encoding='utf-8',backupCount=3),logging.StreamHandler(sys.stdout)]logging.basicConfig(level=logging.DEBUG,format = '%(asctime)s - %(name)s - %(levelname)s -%(funcName)s - %(message)s',handlers=handlers)logging.info('begin')# toggle_h()# toggle_d()# toggle_one(724,536)# enum1()# bj()# gs("abc")# bg_clear()# fg_clear()# toggle_c()toggle_ely36()

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python matplotlib绘图,显示和保存没有标题栏和菜单栏的图像

目录 1. 使用plt.savefig保存无边框图形 2. 显示在屏幕上,并且去掉窗口的标题栏和工具栏 3. 通过配置 matplotlib 的 backend 和使用 Tkinter(或其他图形库) 方法 1:使用 TkAgg 后端,并禁用窗口的工具栏和标题栏 …

使用 Blazor 和 Elsa Workflows 作为引擎的工作流系统开发

开发一个完整的工作流系统使用 Blazor 和 Elsa Workflows 作为引擎,可以实现一个功能强大的工作流管理和设计系统。下面将提供详细的步骤和代码实现,展示如何在 Blazor 中开发一个基于 Elsa Workflows 的工作流系统。 项目概述 我们的工作流系统将包含以…

深入探索Python人脸识别技术:从原理到实践

一、引言在当今数字化时代,人脸识别技术已然成为了计算机视觉领域的璀璨明星,广泛且深入地融入到我们生活的各个角落。从门禁系统的安全守护,到金融支付的便捷认证,再到安防监控的敏锐洞察,它的身影无处不在,以其高效、精准的特性,极大地提升了我们生活的便利性与安全性…

国内汽车法规政策标准解读:GB 44495-2024《汽车整车信息安全技术要求》

目录 背景 概述 标准适用范围 汽车信息安全管理体系要求(第5章) 信息安全基本要求(第6章) 信息安全技术要求(第7章) ◆ 外部连接安全要求: ◆通信安全要求: ◆软件升级安全…

Arcgis Pro安装完成后启动失败的解决办法

场景 之前安装的Arcgis Pro 今天突然不能使用了,之前是可以使用的,自从系统更新了以后就出现了这个问题。 环境描述 Arcgis Pro 3.0 Windows 10 问题描述 打开Arcgis Pro,页面也不弹出来,打开任务管理器可以看到进程创建之后&…

SAP POC 项目完工进度 - 收入确认方式【工程制造行业】【新准则下工程项目收入确认】

1. SAP POC收入确认基础概念 1.1 定义与原则 SAP POC(Percentage of Completion)收入确认方式是一种基于项目完工进度来确认收入的方法。其核心原则是根据项目实际完成的工作量或成本投入占预计总工作量或总成本的比例,来确定当期应确认的收…

Docker 学习总结(85)—— docker cp 使用总结

前言 在现代软件开发中,Docker 已成为一种流行的容器化技术。无论是在开发、测试还是生产环境中,管理容器内的文件都是一项常见且重要的任务。本文将详细介绍如何使用 docker cp 命令在 Docker 容器与宿主机之间拷贝文件和目录,并结合一些实际使用场景,帮助您更高效地管理…

使用 Box2D 库开发愤怒的小鸟游戏

使用 Box2D 库开发愤怒的小鸟游戏 Box2D 是一个开源的 2D 物理引擎,广泛应用于游戏开发中,特别是在模拟物体的运动、碰撞、重力等方面。在本文中,我们将利用 Box2D 库开发一个简化版的 愤怒的小鸟 游戏。我们将一步步展示如何实现物理引擎的…

mac 安装mongodb

本文分享2种mac本地安装mongodb的方法,一种是通过homebrew安装,一种是通过tar包安装 homebrew安装 brew tap mongodb/brew brew upate brew install mongodb-community8.0tar包安装 安装mongodb 1.下载mongodb社区版的tar包 mongdb tar包下载地址 2…

2023年江西省职业院校技能大赛网络系统管理赛项(Linux部分样题)

一、Linux项目任务描述 你作为一个Linux的技术工程师,被指派去构建一个公司的内部网络,要为员工提供便捷、安全稳定内外网络服务。你必须在规定的时间内完成要求的任务,并进行充分的测试,确保设备和应用正常运行。任务所有规划都基于Linux操作系统,请根据网络拓扑、基本配…

【威联通】FTP服务提示:服务器回应不可路由的地址。被动模式失败。

FTP服务器提示:服务器回应不可路由的地址。被动模式失败。 问题原因网络结构安全管理配置服务器配置网关![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/1500d9c0801247ec8c89db7a44907e4f.png) 问题 FTP服务器提示:服务器回应不可路由的地址…

Java中json的一点理解

一、Java中json字符串与json对象 1、json本质 json是一种数据交换格式。 常说的json格式的字符串 > 发送和接收时都只是一个字符串,它遵循json这种格式。 2、前后端交互传输的json是什么? 前后端交互传输的json都是json字符串 比如:…

大模型GUI系列论文阅读 DAY2续:《一个具备规划、长上下文理解和程序合成能力的真实世界Web代理》

摘要 预训练的大语言模型(LLMs)近年来在自主网页自动化方面实现了更好的泛化能力和样本效率。然而,在真实世界的网站上,其性能仍然受到以下问题的影响:(1) 开放领域的复杂性,(2) 有限的上下文长度&#xff…

农业农村大数据应用场景|珈和科技“数字乡村一张图”解决方案

近年来,珈和科技持续深耕农业领域,聚焦时空数据服务智慧农业。 珈和利用遥感大数据、云计算、移动互联网、物联网、人工智能等先进技术,搭建“天空地一体化”监测体系,并创新建设了150的全球领先算法模型,广泛应用于高…

中间件漏洞之redis

目录 前置知识redis持久化存储动态修改配置打redis常用命令 利用弱口令未授权访问写ssh公钥直接写ssrf 绝对路径写shell直接写ssrf 反弹shell直接写ssrf 主从复制防御措施 前置知识 redis持久化存储 RDB Redis DataBase(默认) AOF Append Only File(会追加日志文件…

【odbc】odbc连接kerberos认证的 hive和spark thriftserver

hive odbc驱动,以下两种都可以 教程:使用 ODBC 和 PowerShell 查询 Apache HiveHive ODBC Connector 2.8.0 for Cloudera Enterprise spark thriftserver本质就是披着hiveserver的外壳的spark server 完成kerberos认证: (1)可以…

【联想正式迈入机器人智能制造领域:生产下线六足机器人 全自研】

*1月17日消息,联想集团发文表示, 近日联想集团合肥产业基地下线了一只六足机器人——联想晨星足式机器人IS。 本文引用地址:https://www.eepw.com.cn/article/202501/466441.htm 联想晨星足式机器人系列由联想集团自主研发,伴随它…

ESP-Skainet语音唤醒技术,设备高效语音识别方案,个性化交互应用

在当今数字化、智能化飞速发展的时代,物联网(IoT)与人工智能(AI)的深度融合正在重塑我们的生活和工作方式。 在智能家居的生态系统中,语音唤醒技术不仅能够为用户提供个性化的服务,还能通过定制…

前端发送Ajax请求的技术Axios

目录 1.引入Axios文件 2.使用Axios发送请求 2.1请求方法的别名 请求的URL地址怎么来的&#xff1f; 后端实现 前后端交互 1.引入Axios文件 <script src"https://unpkg.com/axios/dist/axios.min.js"></script> 2.使用Axios发送请求 2.1请求方法的…

Kivy App开发之UX控件VideoPlayer视频播放

kivy使用VideoPlayer控件实现视频播放,可以控制视频的播放,暂停,音量调节等功能。 在使用VideoPlayer视频播放器时,可以参考下表属性来设置其样式和触发事件。 属性说明source视频路径,默认为空state视频状态,值play,pause,stop,默认为stopthumbnail显示视频的缩略图…