AutoIT+Selenium的使用

AutoIt v3是一种免费的类似BASIC的脚本语言,用于自动化Windows GUI和通用脚本。它使用模拟击键,鼠标移动和窗口/控制操作的组合,以便以其他语言(例如VBScript和SendKeys)不可能或不可靠的方式自动执行任务。

安装AutoIT

访问这个网址:https://www.autoitscript.com/site/autoit/downloads/
下载并安装两个文件:SciTE4AutoIt3.exe,autoit-v3-setup.exe
在这里插入图片描述

介绍

AutoIt Window Info:元素识别器,是一个类似selenium IDE的工具,元素识别器找到窗口GUI或非HTML弹出窗口的元素,并提供元素的属性,比如 title, class, instance。
SciTE Script Editor:编辑器,用于编写AutoIT脚本。

编写AutoIT脚本

获取属性
  1. 打开需要上传文件的窗口,通过AutoIt Window Info,拖动Finder Tool获取元素属性:
    在这里插入图片描述
    获取的属性如下,我们会根据这些属性编写脚本。:
    Alt text
方法介绍

这里介绍Web自动化脚本编写过程中可能用到的方法,其余方法查看官方文档

等待窗口就绪:WinWaitActive(“title”[,“text”[,timeout]])

参数解释
title与元素识别器的Title对应
text该窗体下的文本,一般""即可
timeout超时时间,类似于selenium中的WebDriverWait的timeout

返回窗体的位置信息:WinGetPos(“title”[,“text”])

解释
$ aArray [0]X位置
$ aArray [1]Y位置
$ aArray [2宽度
$ aArray [3]高度

模拟鼠标点击:MouseClick ( “button” [, x, y [, clicks = 1 [, speed = 10]]] )

参数解释
button"left"为鼠标左键,"right"为鼠标右键
x,y要在坐标为x,y的位置上进行点击
clicks点击次数

睡眠,单位毫秒,5000代表5秒:Sleep ( milliseconds)

将输入焦点设置为窗口上的给定控件:ControlFocus ( “title”, “text”, controlID )

参数解释
title与元素识别器的Title对应
text该窗体下的文本,一般""即可
controllID{Class} + {Instance}。如图Alt text,则该参数值为:Edit1

发送鼠标单击命令到给定控件:ControlClick(" title “,” text ",controlID )
参数同ControlFocus

设置控件的文本:ControlSetText(" title “,” text “,controlID ,” new text" )

参数解释
title与元素识别器的Title对应
text该窗体下的文本,一般""即可
controllID{Class} + {Instance}。如图Alt text,则该参数值为:Edit1
new text要设置到控件中的新文本
应用
;等待Title为phpwind - Powered by phpwind - Google Chrome的窗口
Local $win = WinWaitActive("phpwind - Powered by phpwind - Google Chrome","",10)

;在本机分辨率宽度为1616,高度为876的情况下,对坐标点(630507)进行鼠标左击
$pos =WinGetPos($win)
$high=$pos[3]  ;表示窗口的的实际高度
$weight=$pos[2]  ;表示窗口的实际宽度
$click_x=630*$weight/1616  ;630表示我在当前电脑分辨率宽度为1616下的X坐标值
$click_y=507*$high/876  ;507表示我再当前电脑分辨率高度为876下的Y坐标值
MouseClick("left",$click_x,$click_y,1)

;等待Class为#32770的窗体
WinWaitActive("[CLASS:#32770]","",10)
;把焦点设置在controllID为Edit1的控件中
ControlFocus("打开","","Edit1")
;设置该控件的文本为C:\Users\qvzn0\Pictures\test.jpeg
ControlSetText("打开","","Edit1","C:\Users\qvzn0\Pictures\test.jpeg")
;点击controllID为Button1的控件
ControlClick("打开","","Button1")

把脚本编译成exe文件

编写完上述脚本后,保存到任意路径,在点击菜单栏Tools -> Complile,出现:在这里插入图片描述
一般默认即可,点击Comlile Script后会在同一目录下生成exe文件。

调用exe文件

在自动化代码打开上传文件的窗体后,调用exe文件即可:

  • Java的调用方法:
Runtime.getRuntime().exec("C:/Users/qvzn0/Desktop/test3333.exe");	
  • Python的调用方法:
os.system("C:/Users/qvzn0/Desktop/test3333.exe")

参考

  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值