在对网页进行自动化操作之前,首先需要获取待操作对象。最基本的获取方法是通过对象的Id或Name属性。借助IE的“开发人员工具”,可以快速的定位网页中DOM对象对应的html代码。
工具/原料
IE10
Autoit3
1.通过Id属性获取网页DOM对象
1、打开IE的"开发人员工具"。在网页加载完成后,按下F12键即可调出IE的"开发人员工具"窗口。
2、查看网页DOM对象对应的html代码。单击“开发人员工具”左边的箭头图标(或者Ctrl+B),切换回IE窗口。单击待操作的DOM对象,再将窗口切换到“开发人员工具”,刚才单击的对象对应的html代码就会被自动标示出来。
3、; 获取关键词文本域对象,其Id属性为kw。Local $oSouSuoKuang = _IEGetObjById($oI呶蓟鹭毵E, "kw")If IsObj($oSouSuoKuang) Then ; 在文本域中输入文本,通过设置文本域对象的value属性 $oSouSuoKuang.value = "在Sublime Text 3中搭建AutoIt3环境"Else MsgBox($MB_SYSTEMMODAL, "蟒加加", "获取关键词文本域对象失败!")EndIf; Autoit3中根据Id获取网页DOM对象的函数为_IEGetObjById,函数的第一个参数为InternetExplorer.Application、窗口或框架对象,第二个参数为DOM对象的Id属性。
4、; 获取“百度一下”按钮对象,其Id属性为su。Local $oBaiDuYiXia = _IEGetObjById($oIE, "su")If IsObj($oBaiDuYiXia) Then ; 单击“百度一下”按钮,通过调用按钮对象的click()方法 $oBaiDuYiXia.click()Else MsgBox($MB_SYSTEMMODAL, "蟒加加", "获取确定按钮对象失败!")EndIf
5、; 完整代码:; 包含I苇质缵爨E管理及消息框常量库文件#include <IE.au3>#include <MsgBoxConstants.au3>; 创建IE对象并转到百度主页Local $oIE = _IECreate("http://www.baidu.com"); 通过Id获取关键词文本域对象Local $oGuanJianCi = _IEGetObjById($oIE, "kw")If IsObj($oGuanJianCi) Then ; 在关键词文本域中输入内容 $oGuanJianCi.value = "在Sublime Text 3中搭建AutoIt3环境"Else MsgBox($MB_SYSTEMMODAL, "蟒加加", "获取关键词文本域对象失败!")EndIf; 通过Id获取确定按钮对象Local $oBaiDuYiXia = _IEGetObjById($oIE, "su")If IsObj($oBaiDuYiXia) Then ; 单击“百度一下”按钮 $oBaiDuYiXia.click()Else MsgBox($MB_SYSTEMMODAL, "蟒加加", "获取确定按钮对象失败!")EndIfMsgBox($MB_SYSTEMMODAL, "蟒加加", "脚本执行完毕!")
2.通过Name属性获取网页DOM对象
1、; 获取关键词文本域对象,其Name属性为wd。Local $oGuanJianCi = _IEGetObjByName(改怊眶峋$oIE, "wd")If IsObj($oGuanJianCi) Then ; 在搜索框中输入文本 $oGuanJianCi.value = "在Sublime Text 3中搭建AutoIt3环境"Else MsgBox($MB_SYSTEMMODAL, "蟒加加", "获取关键词文本域对象失败!")EndIf
2、由于“百度一下”按钮对象没有设置Name属性,则只能通过Id属性获取。