什么是AutoIt,它有什么用?

AutoIt作为一门脚本语言,能够比较自如的操控Window系统中的控件,模拟Windows用户的操作。例如打开IE浏览器、打开文本编辑器等操作,更重要的是,它能够向网银中的安全控件输入内容,而Selenium无法做到。

然而,AutoIt的操控对象也仅限于Windows下的窗口和控件,对于更加细粒度的操作,比如操作Chrome或者FF等浏览器页面中的元素,如点击登录按钮,输入框等,还是要依靠Selenium去完成的

下载、安装过程自行百度,简单。

操作控件的第一步:

获取控件的标识符

用AutoIt Window Info

首先打开AutoIt Windows Info 工具,鼠标点击Finder Tool,鼠标将变成一个小风扇形状的图标,按住鼠标左键拖动到需要识别的控件上。

窗口的title为“选择要加载的文件”,标题的Class为“#32770”。

文件名输入框的class 为“Edit”,Instance为“1” ,所以ClassnameNN为“Edit1”。

打开按钮的class 为“Button”,Instance为“1” ,所以ClassnameNN为“Button1”。

2、根据AutoIt Windows Info 所识别到的控件信息打开SciTE Script Editor编辑器,编写脚本。

右键新建 autoti script,建立文件,写入以下内容:“;”标识注释

 ;ControlFocus("title","text",controlID)Edit1=Edit instance 1ControlFocus("选择要加载的文件","","Edit1"); Wait 10 seconds for the Upload window to appearWinWait("[CLASS:#32770]","",10); Set the File name text on the Edit fieldControlSetText("选择要加载的文件","", "Edit1", "D:\\upload_file.txt")Sleep(2000); Click on the Open buttonControlClick("选择要加载的文件","","Button1");

F5运行脚本即可

使用AutoIt获取控件信息相关推荐

  1. Python调用外部EXE程序遍历窗体及控件并获取控件信息。

    背景 我的工作中经常手工运行一个windows程序(密码生成工具),获取该程序的计算结果,手工填到登录表单的中.该程序非常久远,已无人维护.根据凡是重复2次以上的工作都应该自动化原则,那么我来写个自动 ...

  2. android 自定义控件的宽高_巧用Handler获取View控件信息

    众所周知,在Android实际开发中,对于某些复杂多变的情况,控件的位置摆放.大小控制并非是xml类型的layout文件完全可以搞定的.此时,我们通常会使用Java代码来通过动态计算,将指定的控件摆放 ...

  3. QT5 获取窗口、系统屏幕大小尺寸信息,Qt 获取控件位置坐标,屏幕坐标,相对父窗体坐标

    一.QT5 获取窗口大小尺寸信息 QT窗口尺寸,窗口大小和大小改变引起的事件 QResizeEvent. //窗口左上角的位置(含边框)qDebug() << this->frame ...

  4. 老李推荐:第14章8节《MonkeyRunner源码剖析》 HierarchyViewer实现原理-获取控件列表并建立控件树 1...

    老李推荐:第14章8节<MonkeyRunner源码剖析> HierarchyViewer实现原理-获取控件列表并建立控件树 poptest是国内唯一一家培养测试开发工程师的培训机构,以学 ...

  5. android 巧妙利用反射机制获取控件id,避免大量冗杂的findviewbyid和butterknife注解

    android 巧妙利用反射机制获取控件id,避免大量冗杂的findviewbyid和butterknife注解 一.反射机制概述 Java 反射机制是在运行状态中,对于任意一个类,都能够获得这个类的 ...

  6. android 获取控件 id 工具,如何使用appium desktop 获取Android APP 控件的id

    背景: 随着Android 版本的更新,你会发现我们之前用的最新的版本的Appium 1.5.3无法启动我们的 Android APP 在模拟器为7.0的设备上,所以我们有必要了解如何使用 appiu ...

  7. android自定义view获取控件,android 自定义控件View在Activity中使用findByViewId得到结果为null...

    转载:http://blog.csdn.net/xiabing082/article/details/48781489 1.  大家常常自定义view,,然后在xml 中添加该view 组件..如果在 ...

  8. .net OCX 无法获取“****”控件的窗口句柄,不支持无窗口的ActiveX控 新解决方法...

    2019独角兽企业重金招聘Python工程师标准>>> 朋友找我帮原来的软件加一个小功能,程序是用VB.NET 写的. 软件需要与外部串口设备通信,一只带串口功能的压力表. 应该时间 ...

  9. JS 获取控件的绝对位置

    JS 获取控件的绝对位置 js获取控件的绝对位置 已经控件宽度和高度 2010-08-11 13:07 //获取控件左绝对位置 function getAbsoluteLeft(objectId) { ...

最新文章

  1. 微信分销 微信公众号开店 多用户版源码
  2. 五小步让VS Code支持AngularJS智能提示
  3. 我为什么还要造轮子?欠踹?Monk.UI表单美化插件诞生记!
  4. 2020年数据中心值得关注的8大趋势
  5. Objective - C基础: 第一天 - 1. 第1, 2个OC程序
  6. java 酒店系统_基于JAVA的酒店管理系统
  7. Django框架(8.Django中的模板文件的使用和模板变量的简单使用)
  8. oracle如何创建视图
  9. [Link]选择一个 Python Web 框架:Django vs Flask vs Pyramid
  10. mysql查询当天数据(上周、本月、上个月、距离当前现在6个月的数据)
  11. 适合做短视频电商的人群分类
  12. 基于大数据的人工智能象棋
  13. 秀米 html5 编辑工具,秀米编辑器
  14. 人工免疫算法与物流中心选址问题
  15. Python爬虫抓取网站模板的完整版实现
  16. Android 入门实例完整代码
  17. 高动态范围(High-Dynamic Range,简称HDR)
  18. 方格取数问题(网络流24题之一)
  19. 前有莫雷,今有清华学霸要求公开华人程序员自杀真相,被Facebook开除了
  20. [].shift.call( arguments ) 和 [].slice.call( arguments ) 解释

热门文章

  1. iviewUI组件库中select双向绑定不生效
  2. mysql cte的好处_Mysql 8 重要新特性 - CTE 通用表表达式
  3. 邮箱服务器搜索,【分享】如何从Exchange 服务器端搜索邮件
  4. 大家好,我是风溯,第三届百度大学生网络安全技能大赛个人第一
  5. ecshop二次开发目录文档【文件结构说明和数据库表分析】
  6. JS 10位时间戳转日期
  7. 【Python茴香豆系列】之 PANDAS 变更列的类型
  8. Matlab模拟三个天体运动
  9. kali更新源(源、软件更新,附kali源)
  10. 施工员考试科目有哪些?施工员(装修装饰)练习题分享