imacros使用教程与注意事项
的有关信息介绍如下:对于一些简单的重复操作,可以利用imacros来执行。这里分享一些简单的教程和注意事项
imacros能记录你在网页中的动作,然后模拟你的动作自动重复执行。进阶应用
主要在于两个方面:
1.用JS动态调用,重复执行之。
2.调用CSV文件,这个不错哦
(还可以调用数据库,这个没用过。)
安装和火狐一般扩展安装方法一样,不会装的用google,安装后点击imacros的按钮,浏览器左边出现它的工作界面,就三部分:
1.运行:(可以运行所存在的宏,不解释,别害怕很好用的)
2.记录:(点记录即可记录你在网页中的动作,按停止即可自动保存为当前宏)
3.编辑:(可以对存储的宏进一步编辑,更适合你的用途)
imacros变量
分为系统内定变量和用户自定义变量
一、系统内定变量
系统内定变量中有三个特殊的变量:VAR1 VAR2 VAR3 可以赋予任何值。 常见的系统内见变量:
SET !VAR1 hello
设定!VAR1为 hello world (ps:
代表回车)
SET !TIMEOUT 25 '宏超时值
PROMPT Pleaseentertext !VAR1
'弹出一个输入框,你在输入框中输入的内容将传到!VAR1中。
二、用户自定义变量 : 用户外部传入的变量
iimSet(“myurl”,”www.google.com”)
调用变量时用{{myurl}}
imacros教程(二):JS调用imacros所用到的函数
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 秒
imacros教程(三):调用csv文件
调用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 !REPLAYSPEED FAST 用来设定回放速度为最快,即履行语句中间不等候
SET !ERRORIGNORE YES 用来漠视差错
在录制不要施用您的浏览器返回或者转到按钮或者更改地址栏。
如果宏观产生纰缪时重播您可以测验考试选择录制选项( 点击模式 )手动从对话框后,单击单击模式修改录制模式。
各种差别的模式:
自己主动模式: iMacros试图选择最佳录制选项(建议在大多数情况下的记录上的HTML的网站)。
HTML 模式: iMacros施用纯粹的HTML TAG举行录制。
X / Y模式:施用该录制模式将模拟点击网页相片比本人好看对位置。
DirectScreen模式 :如果其它方法都失败这是最终的处理完成办法。它模仿标准鼠标点击浏览器窗口内。 回放
打开播放选项卡,选择宏从列表,然后按下”播放”来举行回放宏。
你可以清晰的看到宏在运行过程中的步骤。
点击”Play (Loop)”可以重复运行多次同一个宏,填写需要运行的最大数量,并按下”Play (Loop)”即可。
有两种方法会影响宏重播的速度。
第一种选择是重放速度,可设置为三种差别的速度:
快速:宏回放时最大速度(推荐在大多数情况下)。
中等:iMacros会在每一个号令之间等待0.25s。
迟缓:iMacros会在每一个号令之间等待1s。
第二种选择是在宏中插入WAIT号令。
例如:WAIT SECONDS=3 意思是等待3秒
在这篇教程中我们将学习如何在imacros中使用变量。
在iMacros中有两种类型的变量:内建变量和用户定义的变量。
内建变量:
内建变量是用来界定某些性能的宏观的行为,例如宏超时值:
SET !TIMEOUT 33
执行上面一句意味着设定页面超时时间为33s
有三个特殊的内置变量, !VAR1 , !VAR2和!VAR3。这些变量可以设置为任何你自定义的值。
例如: SET !VAR1 helloworld
设定!VAR1为 helloworld (ps:
代表回车)
PROMPT Pleaseentertext !VAR1 '弹出一个输入框,你在输入框中输入的内容将传到!VAR1中。
用户定义的变量:
自定义变量是用户在外部控制时传入的变量。例如在Visual Basic脚本示例这将如下所示:
iret = imacros.iimSet(“-var_ITEM”, “15″)(ps:有时候也可以这样设置:iimSet(“ITEM”, “15″),设置变量ITEM) 在调用的地方使用{{ITEM}}替换要代替的数值。
iMacros让您指定文本文件, CSV文件作为输入。
例如这样一个csv文件:
“ARTIST” , “ALBUM TITLE” , “PRICE”
“Beatles”, “Abbey Road”, “13.49″
“Beatles”, “The Beatles 1,2,3″ , “25.49″
“Mozart” , “Symphonies No.40 & 41″, “9.98″
“Mozart”, “Requiem”, “7.50″
这个文件的文件名为OnlineAuction.csv 我们现在需要告诉iMacros宏如何找到这个数据输入文件。为此,我们使用内置的变量!DATASOURCE SET !DATASOURCE OnlineAuction.csv
如果您不使用任何路径信息DataSource的路径默认定位在标准数据源的目录,可在选项对话框中指定这个路径。默认路径是iMacros数据路径下的datasources文件夹。
选择好数据源文件后我们需要告诉iMacrosCSV文件有多少列。我们用!DATASOURCE_COLUMNS变量设置: SET !DATASOURCE_COLUMNS 3
此数字必须完全匹配输入文件的列数
既然我们要插入的所有数据集,我们需要的宏循环来控制。
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}} 代表的是读取出对应的第一列数据