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: 起头,行间要用 “ ” 分隔,返回值为负数代表履行有错
二、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 用来漠视差错