imacros能记录你在网页中的动作,然后模拟你的动作自动重复执行。进阶应用主要在于两个方面:

1.用JS动态调用,重复执行之。

2.调用CSV文件,这个不错哦。

还可以调用数据库,这个没用过。

安装和火狐一般扩展安装方法一样,不会装的google之,安装后点击imacros的按钮,浏览器左边出现它的工作界面,就三部分:

1.运行:(可以运行所存在的宏,不解释,别害怕很好用的)

2.记录:(点记录即可记录你在网页中的动作,按停止即可自动保存为当前宏)

3.编辑:(可以对存储的宏进一步编辑,更适合你的用途)

imacros变量

分为系统内定变量 和用户自定义变量

一、系统内定变量

系统内定变量中有三个特殊的变量:VAR1 VAR2 VAR3 可以赋予任何值。

常见的系统内见变量:

SET !VAR1 hello<sp>world
设定!VAR1为 hello world (ps: <sp>代表空格<br>代表回车)

SET !TIMEOUT 25 宏超时值

PROMPT Pleaseentertext !VAR1
弹出一个输入框,你在输入框中输入的内容将传到!VAR1中。

二、用户自定义变量 : 用户外部传入的变量

iimSet(“myurl”,”www.google.com”)

调用变量时用{{myurl}}

JS调用imacros所用到的函数

一、iimPlay() : 调用一个iim脚本。

完整调用方法为 : int ret_code = iimPlay ( String macro [, int timeout] ) ,返回值ret_code为1时说明iim被正确调用。小于0则说明执行脚本时出现了错误,

履行 iMacros 的脚本语句,语句可以是一段,必须以 CODE: 起头,行间要用 “\n” 分隔,返回值为负数代表履行有错

二、iimSet() :设置自定义变量

语法为:int ret_code = iimSet ( String -var_VARNAME, String VARVALUE )

最主要的就是上面两个,还可以了解一下

iimDisplay(msg) :以独立对话框形式显示一个消息

string=iimGetLastExtract([n]) : 返回第n此从页面里通过Extract得到的数据

iimGetLastError() 返回最近差错对应的差错信息(字符串)

Tag 未找到时会默认会等候 !TIMEOUT /10 这么常光阴,默认值就是 6 秒

调用csv文件

CMDLINE !DATASOURCE sliyu.csv
SET !DATASOURCE_COLUMNS 8
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}

SET !DATASOURCE sliyu.csv (内置的变量!DATASOURCE)
SET !DATASOURCE_COLUMNS 8 (选择好数据源文件后我们需要告诉iMacrosCSV文件有多少列。用!DATASOURCE_COLUMNS变量设置)
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}} (既然我们要插入的所有数据集,我们需要的宏循环来控制。ps:loop就是脚本循环的次数,还记得play loop那个循环运行按钮么,这个内建变量是用来设置读取文件的第几行。)

现在,我们已经把准备工作都做好了。接下来我们要读取出对应的数据。
TAG TYPE=INPUT:TEXT FORM=Listing ATTR=NAME:Name CONTENT={{!COL1}}
TAG TYPE=INPUT:TEXT FORM=Listing ATTR=NAME:Album CONTENT={{!COL2}}
TAG TYPE=INPUT:TEXT FORM=Listing ATTR=NAME:Price CONTENT={{!COL3}}
{{!COL1}} 代表的是读取出对应的第一列数据

常用指令

REFRESH 用来刷新页面

WAIT SECONDES=3 等候 3 秒

ONDIALOG POS=1 BUTTON=CANCEL CONTENT= 看到弹出窗口后点 Cancel

URL GOTO=http://www.g.cn 转到网址 www.g.cn

TAB T=1 转到第一个标签页

VERSION BUILD=6700624 RECORDER=FX
版本号

TAG POS=1 TYPE=td ATTR=align:center EXTRACT=TXT
POS=地位 页面提取内容 TYPE=标签 ATTR=标签对用的属性:值 EXTRACRT=TXT 提取文字

SET !VAR {{!EXTRACT}} 提取内容在EXTRACT里,复制到var

SET !TIMEOUT 25 超时光阴设值

SET !REPLAYSPEED FAST 用来设定回放速度为最快,即履行语句中间不等候

SET !ERRORIGNORE YES 用来漠视差错

iMacros 教程的更多相关文章

  1. iMacros 入门教程-内置变量介绍(5)

    iMacros 的变量类型 1.!VAR0 到 !VAR9,这是系统定义的内置变量,专门给你赋值用 就是程序设定了这几个名字给你赋值 2.内建变量 就是 imacros 设定的特别作用的变量,例如 ! ...

  2. iMacros 入门教程-基础函数介绍(4)

    imacros的TRAY函数用法 这个函数的功能就是隐藏或显示,当执行imacros文件的时候,出现在特定标签的imacros图标 TRAY HIDE 就是隐藏图标 TRAY SHOW 就是显示图标 ...

  3. iMacros 入门教程-基础函数介绍(3)

    imacros 的 PAUSE 函数用法 这个函数的作用是暂停程序的运行,也就是断点. 对于有时运行到某一步需要输入内容时,或者需要调试时非常有用 如果你混着 pause 和 wait 一起用,那么当 ...

  4. iMacros 入门教程-基础函数介绍(2)

    imacros 的 pos 参数是什么意思 position的缩写,如果有 2 个以上的元素共用完全相同的属性(比方说同一个小区的同一栋楼),这个 POS 的参数可以借由不同位置来帮助明确定位(也就是 ...

  5. iMacros 入门教程-基础函数介绍(1)

    最近在研究 imacros 这工具,感觉非常强大,简单来说就是自动化对于浏览器的操作,程序自动帮你实现,支持 chrome firefox ie,这样基本就覆盖了99%的人群了吧,甚至他自己也有一个 ...

  6. Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求

    上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...

  7. Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数

    上一篇:Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数 之前介绍了简单的路由以及传参,这篇文章我们将要学习复杂一些的路由以及传递其他附加参数.一个好的路由系统可以使我们 ...

  8. Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数

    上一篇:Angular2入门系列教程-服务 上一篇文章我们将Angular2的数据服务分离出来,学习了Angular2的依赖注入,这篇文章我们将要学习Angualr2的路由 为了编写样式方便,我们这篇 ...

  9. Angular2入门系列教程4-服务

    上一篇文章 Angular2入门系列教程-多个组件,主从关系 在编程中,我们通常会将数据提供单独分离出来,以免在编写程序的过程中反复复制粘贴数据请求的代码 Angular2中提供了依赖注入的概念,使得 ...

随机推荐

  1. HTML5 UI框架Kendo UI Web教程:创建自定义组件(三)

    Kendo UI Web包 含数百个创建HTML5 web app的必备元素,包括UI组件.数据源.验证.一个MVVM框架.主题.模板等.在前面的2篇文章<HTML5 Web app开发工具Ke ...

  2. Spring 文章推荐

    spring mvc 异常统一处理方式:http://www.cnblogs.com/xd502djj/archive/2012/09/24/2700490.html 在springmvc中使用hib ...

  3. 前端开发面试题JS2

    21.如何判断一个对象是否属于某个类? 使用instanceof if(a instanceof Person){ alert('yes'); } 22.new操作符具体干了什么呢? (1)创建一个空 ...

  4. MySQL and Postgres command equivalents (mysql vs psql)

    MySQL and Postgres command equivalents (mysql vs psql) 博客分类: Database   From: http://blog.endpoint.c ...

  5. 【宽度优先搜索】神奇的状态压缩 CodeVs1004四子连棋

    一.写在前面 其实这是一道大水题,而且还出在了数据最水的OJ上,所以实际上这题并没有什么难度.博主写这篇blog主要是想写下一个想法--状态压缩.状态压缩在记录.修改状态以及判重去重等方面有着极高的( ...

  6. 在FireFox中安装Selenium IDE

    第二步:点击查看更多,查找Selenium IDE,安装 第三步:安装好后,在顶部的工具栏里点击"工具",弹出的选项框里出现Selenium IDE,安装完毕.

  7. sql函数PadLeft与PadRight代码实例

    1.PadLeft函数向已知字符串左边补充字符,使整个字符串到达指定长度 CREATE FUNCTION PadLeft ( ),/*原始字符*/ @TotalLength int,/*总长度*/ ) ...

  8. GridControl

    隐藏Drag a column header here to group by that column https://www.devexpress.com/Support/Center/Questi ...

  9. 在代码中调用gdb

    转载:http://blog.csdn.net/hanchaoman/article/details/5583457 在SIGSEGV的handler中调用gdb, 命令gdb [exec file] ...

  10. SQL Server 2012 管理新特性:AlwaysOn【转】

    http://jimshu.blog.51cto.com/3171847/871169 见超链接