



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一讲,介绍一下基本的东西如何打开一个网页(太简单,加点要求)1.打开百度, , 在百度搜索里面输入”与 autoit3 亲密接触”,偶的blog;2.窗口我要”800*600”,隐藏工具栏,而且大小不可更改;3.偏执一点,不喜欢”百度一下,你就知道”,那我们改一下”我的百度,我做主”4.状态栏里面显示信息”欢迎访问 与 autoit3 亲密接触 /iokey” 5.我不想看到整个过程,我只想看到结果,OK没问题.首先我们打开一个浏览器,输入百度的网址,这里要用到_IECreate,这个函数的返回值是指向这个ie窗口的目标变量,参数” 0,1,1,0”,分别的意思是:不找已经存在的的ie窗口,显示ie,等待网页载入完全然后返回,激活此ie窗口#include $oIE = _IECreate (,0,1,1,0)接下来我们对这个窗口进行一番设置,这里要用到_IEPropertySet,这个函数用来设置浏览器或者DOM元素的_IEPropertySet ($oIE, toolbar, 0) ;隐藏toolbar_IEPropertySet ($oIE, width, 800) ;设置ie宽800像素_IEPropertySet ($oIE, height, 600) ;设置ie高600像素_IEPropertySet ($oIE, resizable, 0) ;设置ie不可以调整大小_IEPropertySet ($oIE, title,我打开的百度,我做主) ;设置ie标题,取代原title_IEPropertySet ($oIE, statustext,欢迎访问 与 autoit3 亲密接触 /iokey) ;设置状态栏设置完毕,我想在搜索框里面写入搜索内容,这里说明一点,当窗口显示的时候我们可以用send()/sendx()来发送,但是这样会遇到一个常见的问题,可能窗口不是激活状态,因为ie窗口里面的内容不是标准的空间,所以GUICtrlSetData失效了.不过对ie.au3有更好的方法,下面来看:$oForm = _IEFormGetObjByName ($oIE, f)$oQuery1 = _IEFormElementGetObjByName ($oForm, wd)_IEFormElementSetValue ($oQuery1, 与 autoit3 亲密接触)上面三句,分别是找到name为”f”的表单,在这个表单里面找到name为”wd”的表单元素,这里的wd代表的就是搜索框,最后将wd的内容设置为与 autoit3 亲密接触这里还有朋友要问,能不能自动点击搜索按钮呢?当然可以的,而且我们还不是通过简单的send()回车键来实现,_IEFormSubmit ($oForm,0)这句就是提交$oForm表单, 0代表不等待网页载入完成立即返回.这样还不够,那我们再玩点花样,目标是先让ie隐藏,设置啊,输入搜索串都是在隐藏状态下完成,显示出来的时候什么都完成了,首先我们让ie打开的时候就是隐藏状态,$oIE = _IECreate (,0,0,1,0)然后在适当的时候,我们让她显示出来,这里我们用到_IEAction(),这个函数模拟了我们对浏览器的大部分操作,如刷新,后退,退出等等,这里是让ie显示的,当然也有隐藏的功能._IEAction ($oIE, visible)总结一下,这里我们用到了几个函数;_IEPropertySet;_IECreate;_IEAction 这些都是和浏览器属性相关的,有着众多的参数可以来利用,基本上可以满足对浏览器的操作.这里大家可能要提出一些疑问,在输入百度搜索内容的时候提到的f wd,是从哪里来的?这个就留在下一讲,将详细的讲述一下如何填写表单.本次的完全代码:#include $oIE = _IECreate (,0,0,1,0);打开一个ie,输入百度网址_IEPropertySet ($oIE, toolbar, 0)_IEPropertySet ($oIE, width, 800)_IEPropertySet ($oIE, height, 600)_IEPropertySet ($oIE, resizable, 0)_IEPropertySet ($oIE, title,我打开的百度,我做 主)_IEPropertySet ($oIE, statustext,欢迎访问 与 autoit3 亲密接触 /iokey)$oForm = _IEFormGetObjByName ($oIE, f)$oQuery1 = _IEFormElementGetObjByName ($oForm, wd)_IEFormElementSetValue ($oQuery1, 与 autoit3 亲密接触)_IEFormSubmit ($oForm,1)_IEAction ($oIE, visible)Sleep(5000)MsgBox(0,提醒,确定退出IE)_IEAction ($oIE, quit)第二讲,我们开始讨论如何填写表单第一步,先简单说一下HTML表单(Form).HTML表单(Form)是HTML的一个重要部分,主要用于采集和提交用户输入的信息。HTML表单(Form)常用控件有:input type=text 单行文本输入框,可以用来输入用户名input type=password 密码输入框(输入的文字用*表示) input type=submit 将表单(Form)里的信息提交给表单里action所指向的文件,一般我们从网页上看到的就是确定/发表等等input type=checkbox 复选框 input type=radio 单选框 select 下拉框 textArea 多行文本输入框第二步,我们如何找到一个网页的表单和表单内的控件.下面我们结合来讲解如何自动填写这个就是登录时候我们要操作的几个部分:分类如下1,用户名 2,密 码 3,版 本 默 认/极速3.0 /简 约 4,记住用户名/增强安全性 5,登录邮箱/登录网盘这个五部分就是163mail里面的表单控件,这里我们先要看一下下面两个函数_IEFormGetCollection 返回代表文档内表单的目标变量的集合,同时EXTENDED记录了表单的数量_IEFormElementGetCollection返回代表指定表单内所有控件的目标变量的集合,同时EXTENDED记录了该表单内控件的数量好的,知道了上面两个函数的简单描述,我们可以写出:#include $oIE = _IECreate ()$oForms = _IEFormGetCollection ($oIE)MsgBox(0, 表单信息, 这个页面上共有 & extended & 个表单) 这里还要提到一个关键字For.In.Next 这个关键字thesnow没有汉化,我就罗嗦几句,For In statements .Next 是一个变量,不必事先声明是一个数组或者变量合集(至少包含一个元素)作用是列举的所有元素.为什么要提到这个呢?因为_IEFormGetCollection ($oIE)返回的是个合集,$oQuerys = _IEFormElementGetCollection ($oForms)这样是错误的,而正确的方法是:For $Form In $oForms MsgBox(0, 表单名称, $oF)Next这里的$Form是随意定义的变量,可以是任意的变量,对于表单内的控件也可以同理得到寻找方法,完整的查看表单的方法就出来了,#include $oIE = _IECreate ()$oForms = _IEFormGetCollection ($oIE)MsgBox(0, 表单信息, 这个页面上共有 & extended & 个表单) For $Form In $oFormsMsgBox(0, 表单名称, $F)$oQuerys = _IEFormElementGetCollection ($Form)For $Query In $oQuerysMsgBox(0, 表单控件信息, 名称:&$Q & 类型:&$Query.type)NextNext 这里只是找到了这些表单/控件,有时还是难分辨具体对于网页上是哪部分,有HTML基础的朋友可以看网页的源文件,核对,无基础的朋友建议借助Dreamweaver来看,不是很难.第三步,我们来让autoit3填写这个表单,先说一下思路,因为我们已经可以通过上面的方法找到相关的资料,可以得到如下信息:表单:一个 名称是login1631,用户名 : username 类型是text2,密 码 :passward 类型是passward3,版 本 默 认/极速3.0 /简 约 : selType 类型是 select-one4,记住用户名/增强安全性 : remuser 类型是 checkbox / secure 类型是 checkbox 5,登录邮箱/登录网盘 : 登录邮箱 类型是 submit / 登录网盘 类型是 submit下面我们用到的几个函数_IEFormGetObjByName 返回一个表单的变量,这个变量指向指定名称的表单_IEFormElementGetObjByName 返回一个控件的变量,这个变量指向指定表单和名称的控件_IEFormElementSetValue 设定表单控件的值接下来我们先试一下,将邮箱的用户名写上去:#include $oIE = _IECreate ()$oForm = _IEFormGetObjByName ($oIE, login163)$oQuery = _IEFormElementGetObjByName ($oForm, username)_IEFormElementSetValue ($oQuery, AutoIt IE.au3)同样的方法,写入密码:$oQuery = _IEFormElementGetObjByName ($oForm, password)_IEFormElementSetValue ($oQuery, AutoIt IE.au3)下面是版本的选择了,这要用到下面这个函数:_IEFormElementOptionSelect 设置 Select Option类的表单控件值,具体见帮助.$oQuery = _IEFormElementGetObjByName ($oForm, selType)_IEFormElementOptionSelect ($oQuery , 1, 1, byIndex)对应记住用户名/增强安全性这两个checkbox我们取消check状态,需要下面的函数:_IEFormElementCheckBoxSelect 可以设置checkbox类的表单控件值,具体见帮助_IEFormElementCheckboxSelect ($oForm, 0, , 0, byIndex)_IEFormElementCheckboxSelect ($oForm, 1, , 0, byIndex) 最后我们还剩下登录邮箱/登录网盘这两个选项了,这里上一章节用来提交表单的函数_IEFormSubmit 使用不了,为什么?there is often custom JavaScript tied to an onClick event for its Submit button帮助里面的.所以我们要用到_IEAction()也是上一章节提到的,我们通过名称找到对应这个控件的变量,然后模拟一个click在这个变量上,方法如下:$oQuery = _IEFormElementGetObjByName ($oForm, 登录邮箱)_IEAction($oQuery ,click)同样登录网盘就是下面的方法:$oQuery = _IEFormElementGetObjByName ($oForm, 登录网盘)_IEAction($oQuery ,click)终于写完了,我想综合一/二两讲,添加一些GUI方面的东西,大家可以写出一个不错的163邮件登录的工具,甚至做出一个多邮箱登录软件总结:这一讲包括的函数:IEFormElementCheckboxSelect _IEFormGetObjByName _IEFormElementGetCollection _IEFormElementGetObjByName_IEFormElementOptionSelect_IEFormElementSetValue下面这两个是类似的函数,大家看看帮助就明白了._IEFormElementGetValue _IEFormElementRadioSelect本次代码:#include $oIE = _IECreate (,0,0,1,0)_IEPropertySet ($oIE, toolbar, 0)_IEPropertySet ($oIE, width, 600)_IEPropertySet ($
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 子宫颈炎课件教学
- 工业给水处理概述
- 子宫模型解剖课件
- 年度全员安全培训计划课件
- 工业油脂安全培训总结课件
- 正在按揭的车转卖合同5篇
- FGFR2-3-IN-3-生命科学试剂-MCE
- Factor-B-IN-5-生命科学试剂-MCE
- 农发行石家庄市赵县2025秋招群面案例总结模板
- 天津机电职业技术学院招聘笔试真题2024
- 临床运动处方实践专家共识(2025)解读 3
- 用户侧储能系统调度平台创新创业项目商业计划书
- 药厂生产管理培训课件
- 2021-2025年高考地理真题知识点分类汇编之地球的运动
- 2025海南国考时政试题及答案
- 小学数学课堂教学提问的教学策略讲座稿
- 2025年医院院感科医院感染试题及答案
- 2025年邮储银行招聘笔试试题及答案(可下载)
- 线束变更管理办法
- 国企采购培训课件模板
- Dynaform中文手册文档
评论
0/150
提交评论