iMacros帧名称故障排除

时间:2013-12-10 05:51:50

标签: java javascript firefox firebug imacros

我的框架名称不断变化我遇到了问题我尝试过FRAME NAME = *和其他各种方法。我觉得它不起作用,因为网页被设置为不同的html标签..我不知道为什么但它不允许我从我打开的单独的hmtl标签中提取任何数据。我认为这是问题,但我无法弄清楚..谢谢

openAndExtract = "Code: ";
openAndExtract += "FRAME NAME="ext-comp-1494"" + NewLine;
openAndExtract += "TAG POS=1 TYPE=DIV ATTR=TXT:There<SP>are<SP>no<SP>updates." + NewLine;
openAndExtract += "FRAME F=0" + NewLine;
openAndExtract += "TAG POS=3 TYPE=SPAN ATTR=TXT:01000978" + NewLine;
openAndExtract += "FRAME NAME="ext-comp-1489"" + NewLine;
openAndExtract += "TAG POS=3 TYPE=DIV ATTR=TXT:Search<SP>this<SP>feed<SP>|<SP>ShowAll<SP>Updates<SP>ShowAll*" + NewLine;
openAndExtract += "FRAME F=0" + NewLine;
openAndExtract += "TAG POS=3 TYPE=SPAN ATTR=TXT:01008153" + NewLine;
openAndExtract += "FRAME NAME="ext-comp-1484"" + NewLine;
openAndExtract += "TAG POS=3 TYPE=DIV ATTR=TXT:Search<SP>this<SP>feed<SP>|<SP>ShowAll<SP>Updates<SP>ShowAll*" + NewLine;
openAndExtract += "FRAME F=0" + NewLine;
openAndExtract += "TAG POS=1 TYPE=EM ATTR=ID:ext-gen119" + NewLine;
openAndExtract += "FRAME NAME="ext-comp-1006"" + NewLine;
alert(iimGetLastExtract ());
PlayMacro = iimPlay(openAndExtract);

1 个答案:

答案 0 :(得分:1)

为此,您必须深入研究HTML代码。将您记录的值与iMacros进行比较,并尝试在网页的HTML代码中查找。要从HTML代码中提取它,您必须使用某种正则表达式或正则表达式。

然后你必须使用2个宏。首先提取HTML代码,然后从HTML中提取NAME值。当你拥有它时,你将在第二个宏中使用它。

示例:

var macro1;

macro1 ="CODE:";
macro1 +="TAG POS=1 TYPE=DIV ATTR=CLASS:some_class EXTRACT=HTM";

var macro2;

macro2 ="CODE:";
macro2 +='FRAME NAME="{{name}}"'+"\n";
macro2 +="TAG POS=1 TYPE=DIV ATTR=CLASS:some_other_class "+"\n";

iimPlay(macro1)

var name=iimGetLastExtract();

name=name.match(/some_regular_expresion/);

iimSet("name",name)

iimPlay(macro2)

这将是方法。剩下的由你决定。您可能无法找到该名称属性,因为它可以隐藏。