自动化操作脚本

文章目录

  • vbs
  • openCV + pyautogui


vbs

SSH连接并执行指令操作

Dim WshShell 
Set WshShell=WScript.CreateObject("WScript.Shell") WshShell.Run "cmd.exe"
WScript.Sleep 1000
WshShell.SendKeys "ssh xcmg@10.27.40.103"
WshShell.SendKeys "{ENTER}"
WScript.Sleep 1000
WshShell.SendKeys "123"
WshShell.SendKeys "{ENTER}"
WshShell.SendKeys "cd agv_1 && xmake run"
WshShell.SendKeys "{ENTER}"

MQTT服务器启动

Dim WshShell 
Set WshShell=WScript.CreateObject("WScript.Shell") WshShell.Run "cmd.exe"
WScript.Sleep 1000
WshShell.SendKeys "C:\Users\USER\emqx-5.3.0-windows-amd64\bin\emqx start"
WshShell.SendKeys "{ENTER}"
Dim WshShell 
Set WshShell=WScript.CreateObject("WScript.Shell") WshShell.Run "cmd.exe"
WScript.Sleep 1000
WshShell.SendKeys "D:"
WshShell.SendKeys "{ENTER}"
WshShell.SendKeys "cd D:\Program Files {(}x86{)}\work\emqx\bin"
WshShell.SendKeys "{ENTER}"
WshShell.SendKeys "emqx start"
WshShell.SendKeys "{ENTER}"

openCV + pyautogui

import cv2
import numpy as np
import pyautogui
import time# 捕获屏幕的函数
def capture_screen():image = pyautogui.screenshot()image = cv2.cvtColor(np.array(image), cv2.COLOR_RGB2BGR)return image# 寻找目标图像的函数
def find_target(screen, target, threshold=0.8):result = cv2.matchTemplate(screen, target, cv2.TM_CCOEFF_NORMED)_, max_val, _, max_loc = cv2.minMaxLoc(result)if max_val > threshold:return max_locreturn None# 点击目标的函数
def click_target(target_image_path, waiting_time=5):# 等待程序加载或窗口出现time.sleep(waiting_time)target_image = cv2.imread(target_image_path)screen = capture_screen()target_location = find_target(screen, target_image)if target_location:# 计算图标的中心位置并点击target_center = (target_location[0] + target_image.shape[1]//2, target_location[1] + target_image.shape[0]//2)pyautogui.click(target_center)return Truereturn False# 主函数
def main():# 点击与软件链接的文件if not click_target('path_to_file_icon.jpg'):print("Failed to find the file icon.")return# 等待软件启动并点击软件界面中的按钮if not click_target('path_to_software_button.jpg', waiting_time=10):print("Failed to find the button in the software.")return# 点击新窗口中的按钮if not click_target('path_to_new_window_button.jpg', waiting_time=5):print("Failed to find the button in the new window.")returnprint("Operation completed successfully.")if __name__ == "__main__":main()

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

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

相关文章

xxl-job详解

目录 1、xxl-job介绍1.1 xxl-job的原理1.1.1 执行器的注册和发现1.1.2 调度中心调用执行器 1.2 quartz和xxl-job对比 2、快速入门2.1 下载并启动2.2 在调度中心新增定时任务2.3 任务运行模式(BEAN、GLUE)2.4 xxl-job的总结 3、后端专属技术群 1、xxl-job介绍 ​ xxl-job是一个…

Python源码30:海龟画图turtle画紫色的小熊

turtle模块是一个Python的标准库之一,它提供了一个基于Turtle graphics的绘图库。Turtle graphics是一种流行的绘图方式,它通过控制一个小海龟在屏幕上移动来绘制图形。 turtle模块可以让您轻松地创建和控制海龟图形,从而帮助您学习Python编…

Qt12.8

使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为"admin",密码是否为…

lv11 嵌入式开发 中断控制器14

目录 1 中断控制器 ​编辑 2 Exynos4412下的中断控制器 2.1 概述 2.2 特征 ​编辑 2.3 中断状态 2.4 中断类型 2.5 中断控制器GIC中断表 3 中断控制器寄存器详解 3.1 ICDDCR(Interrupt Controller Distributor Control Register) 3.2 ICDISER…

当你还在纠结用什么技术时,这位独立开发者用PHP和JavaScript实现财务自由了

大家好,我是风筝,微信搜「古时的风筝」,更多干货 一个个人产品卖了5400万,这大概就是最成功的独立开发者了吧 这位独立开发者是 levelsio,他的真名是 Pieter Levels,是一位荷兰的独立开发者。看看人家的工…

WPF DataGrid 动态增加列

方式一:通过DataGrid 数据源即DataTable,在DataTable里面动态增加了列之后,重新构造每一行数据,设置DataGrid.ItemsSource null; 然后再重新设置ItemsSource到DataTable public partial class MainWindow : Window{public MainWi…

【Java基础系列】Cron表达式入门

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

优秀案例 | 元宇宙双语财经科技主播“舒望”主持首届粤港澳大湾区元宇宙国际传播论坛

12月6日,由南方财经全媒体集团指导、大湾区元宇宙国际传播实验室(GBA MIC Lab)主办、南财国际传播中心和21世纪经济报道共同承办,以“多元共创开放共享”为主题的首届粤港澳大湾区元宇宙国际传播论坛在广州隆重开幕。 “立足湾区,…

Kubernetes - 为什么 K8S 在容器里不能调用自己?

问题描述 最近遇到一个神奇的现象,在 K8S 的 POD 容器中,比如 pod name:mini-appnamespace:devport:5050 那么,是无法在 mini-app 容器里执行以下命令,如果执行,会一直卡在这条命…

一文详解Java单元测试Junit

文章目录 概述、Junit框架快速入门单元测试概述main方法测试的问题junit单元测试框架优点:使用步骤: 使用案例包结构 Junit框架的常见注解测试 概述、Junit框架快速入门 单元测试概述 就是针对最小的功能单元(方法),…

ROS rosbag

在ROS中的rosbag是一个命令行工具,主要用于记录、回放和分析rostopic中的数据。它可以将指定rostopic中的数据记录到.bag后缀的数据包中,以便于进行离线分析和处理。 在ROS系统中,rosbag可以通过命令行工具或ROS节点来使用。 通过rosbag命令…

数字图像处理(实践篇)十九 漫水填充

目录 一 漫水填充算法--FloodFill 二 涉及的函数 三 实践 一 漫水填充算法--FloodFill FloodFill漫水填充算法就是选中与种子点相连接的区域,利用指定颜色进行区域颜色填充。可以通过设置连通方式或像素的范围控制填充的效果。通常是用来标记或者分离图像的一部…

进程地址空间

引入地址空间 静态变量和栈空间变量 静态变量默认是被初始化的 存放在初始化和为初始化空间中 static已经变成了全局变量 命令行参数和环境变量的增长方向 这里观察的是命令行参数和环境变量的地址 观察命令行和环境变量表的地址 进程地址空间 如果他们是同一块儿空间&am…

Ubuntu22.04 交叉编译fdk-aac for Rv1106

一、下载fdk-aac git clone https://github.com/mstorsjo/fdk-aac.git 二、编译 mkdir build cd buildcmake -DCMAKE_CXX_COMPILER/opt/arm-rockchip830-linux-uclibcgnueabihf/bin/arm-rockchip830-linux-uclibcgnueabihf-g -DCMAKE_C_COMPILER/opt/arm-rockchip830-linux-…

软件测试——集成测试

集成测试是在单元测试之后,将各个独立单元(通常是已经通过单元测试的模块或组件)组合在一起,测试它们在一起协同工作的过程。以下是进行集成测试的一般步骤和最佳实践: 1. 明确定义集成测试的目标 确定集成测试的目标…

麒麟v10 数据盘初始化 gpt分区

麒麟v10 数据盘初始化 gpt分区 1、查看磁盘 lsblk2 、分区 parted2.1、 设置磁盘分区形式2.2、 设置磁盘的计量单位为磁柱2.3、 分区2.4、 查看分区 3、分区格式化4、 挂载磁盘4.1、新建挂载目录4.2、挂载磁盘4.3、查看挂载结果 5、设置开机自动挂载磁盘分区5.1、 查询磁盘分区…

ClamAV开源病毒库使用例子

ClamAV是一个开源的反病毒引擎,用于检测恶意软件和病毒。ClamAV提供了一个名为cl_scanfile的函数,用于扫描单个文件是否包含病毒。以下是一个使用cl_scanfile函数的示例代码: 首先,确保已经安装了ClamAV库。在Debian/Ubuntu系统中…

用AI来纠正错别字和修饰文字

▲ 搜索“大龙谈智能内容”关注GongZongHao▲ 在使用谷歌翻译或百度翻译将英语翻译成中文时,有些句子读起来不太流畅。我尝试使用AI来帮助我修改翻译后的中文,希望能让句子更符合中文习惯。 使用百度文心一言尝试一下。 文心一言的链接是这个&#x…

VUE3给table的head添加popover筛选、时间去除时分秒、字符串替换某字符

1. VUE3给table的head添加popover筛选 <el-tableref"processTableRef"class"process-table"row-key"secuId":data"pagingData"style"width: 100%"highlight-current-row:height"stockListHeight":default-exp…

RHEL/CentOS的firewalld防火墙服务配置

从 RHEL/CentOS 7开始&#xff0c;使用新的防火墙服务——firewalld。这里介绍该防火墙服务的基本用法 一、防火墙服务管理&#xff1a;从 RHEL/CentOS 7开始采用Systemd作为新的系统管理器&#xff0c;而systemctl则是Systemd中用于管理服务的命令 # 启动防火墙服务 systemct…