1

任何具有 imacros 技能的人,我对 imacros 脚本有疑问..

当我用改变的框架做一些脚本时,有时它是 F=5、F=6、F=9、F=12 等等。

当我运行时,它会导致标签/错误。

你能解决这个案子吗?

谢谢你..

我正在做自动 facebook 和 twitter 共享代码。

这是我的 imagros 代码:

        URL GOTO=http://gnctrkcll.turkcell.com.tr/#!/haberler/ben-yaptim-paketyle-kend-paketn-kendn-yarat
        URL GOTO=http://gnctrkcll.turkcell.com.tr/#!/haberler/bu-yilbasi-kutlamalari-sudan-ucuz
        TAB T=1
        FRAME F=9
        TAG POS=1 TYPE=BUTTON ATTR=TXT:Like
        WAIT SECONDS=3
        TAG POS=2 TYPE=SPAN ATTR=TXT:Onayla
        TAB T=2
        FRAME F=0
        TAG POS=1 TYPE=INPUT:SUBMİT ATTR=TYPE:submit&&VALUE:Beğen

        WAIT SECONDS=4

        TAB T=1
        FRAME F=9
        TAG POS=1 TYPE=SPAN ATTR=TXT:Tweet
        TAB T=2
        FRAME F=9
        TAG POS=1 TYPE=INPUT:SUBMİT FORM=ID:update-form ATTR=CLASS:button<SP>selected<SP>submit&&TYPE:submit&&VALUE:Tweetle
4

3 回答 3

2

您需要为此将代码转换为 javascript 格式并执行额外的循环以搜索当前帧。像这样的东西:

var check =  "CODE:";
check+=  "FRAME F={{i}}" + "\n"; 
check+=  "TAG POS=1 TYPE=SPAN ATTR=TXT:Tweet" + "\n"; 
for(i=1;i<=15;i++){
iimSet("i",i);
iimPlay(check);}
于 2012-12-27T21:24:16.897 回答
2

或者您可以对代码进行一些更改并制作一个搜索帧号的函数,如下所示

///main code

var frame=SearchFrame();

//use frame to set into macro and play it





function SearchFrame()
{

var check =  "CODE:";
check+=  "FRAME F={{i}}" + "\n"; 
check+=  "TAG POS=1 TYPE=SPAN ATTR=TXT:Tweet CONTENT=EVEN:MOUSEOVER" + "\n"; 

frame=0;

for(i=1;i<=15;i++){
iimSet("i",i)

//if the result of the macro is true save frame number and break
if(iimPlay(check)==true)
{

frame=i;
break;
}
}
//return frame number
return frame;


}
于 2012-12-29T01:08:16.057 回答
1

我在第一篇文章中使用了你的代码,并在 Tweet 按钮旁边放置了更改框。

///////macro declaration////////////

var mainMacro;

mainMacro ="CODE:";

mainMacro +="URL GOTO=http://gnctrkcll.turkcell.com.tr/#!/haberler/ben-yaptim-paketyle-kend-paketn-kendn-yarat"+"\n";
mainMacro +="URL GOTO=http://gnctrkcll.turkcell.com.tr/#!/haberler/bu-yilbasi-kutlamalari-sudan-ucuz"+"\n";
mainMacro +="TAB T=1"+"\n";
mainMacro +="FRAME F=9"+"\n";
mainMacro +="TAG POS=1 TYPE=BUTTON ATTR=TXT:Like"+"\n";
mainMacro +="WAIT SECONDS=3"+"\n";
mainMacro +="TAG POS=2 TYPE=SPAN ATTR=TXT:Onayla"+"\n";
mainMacro +="TAB T=2"+"\n";
mainMacro +="FRAME F=0"+"\n";
mainMacro +="TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:Begen"+"\n";
mainMacro +="WAIT SECONDS=4"+"\n";

var mainMacro1="CODE:";
mainMacro1 +="TAB T=1"+"\n";
mainMacro1 +="FRAME F={{frame}}"+"\n";
mainMacro1 +="TAG POS=1 TYPE=SPAN ATTR=TXT:Tweet"+"\n";
mainMacro1 +="TAB T=2"+"\n";
mainMacro1 +="FRAME F=9"+"\n";
mainMacro1 +="TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:update-form ATTR=CLASS:button<SP>selected<SP>submit&&TYPE:submit&&VALUE:Tweetle"+"\n";


//////////Beginning/////////////

iimPlay(mainMacro)

//calling for the function which will find the frame
var frame=SearchFrame();

iimSet("frame",frame)
iimPlay(mainMacro1)




function SearchFrame()
{

var check =  "CODE:";
check+=  "FRAME F={{i}}" + "\n"; 
check+=  "TAG POS=1 TYPE=SPAN ATTR=TXT:Tweet CONTENT=EVEN:MOUSEOVER" + "\n"; 

frame=0;

for(i=1;i<=15;i++){
iimSet("i",i)

//if the result of the macro is true save frame number and break
if(iimPlay(check)==true)
{

frame=i;
break;
}
}
//return frame number
return frame;


}

我希望这行得通。我不得不将您的宏拆分为 2 个宏。第一个将导航到链接,第二个将点击 Tweet 按钮。如果它不起作用,你自己做一点工作,它会的。

于 2012-12-30T23:10:33.977 回答