Imacros IF =#EANF#MACroERROR

时间:2017-06-04 21:55:32

标签: imacros

我使用以下代码从twitter中删除名称。

VERSION BUILD=11.5.499.3066
TAB T=1
TAB CLOSEALLOTHERS
SET !ERRORIGNORE NO
SET !LOOP 20
TAG POS=45 TYPE=DIV ATTR=CLASS:ProfileNameTruncated<SP>account-group EXTRACT=TXT
SET Name  EVAL("var extract  = \"{{!EXTRACT}}\"; if (extract == \"#EANF#\") MacroError(\"Value is not in the set range\";")

SAVEAS TYPE=EXTRACT FOLDER=* FILE=Names.csv
WAIT SECONDS=2

我收到此消息错误-1250:EVAL中的JScript语句包含以下错误:预期&#39;,&#39;或者&#39;)&#39;。第7行:SET名称EVAL(&#34; var extract = \&#34; {{!EXTRACT}} \&#34 ;; if(extract == \&#34; #EANF#\&#34;) MacroError(\&#34;值不在设定范围内\&#34 ;;&#34;)

我是新手和初学者。请帮忙 谢谢

1 个答案:

答案 0 :(得分:0)

我无法理解你真正想要实现的目标。由于我们没有TAG POS值循环因此它将始终提取相同的值。这是javascript中编辑过的代码

     var macro; 
        macro =  "CODE:";
        macro +=  "VERSION BUILD=11.5.499.3066" + "\n";
        macro +=  "TAB T=1" + "\n";
        macro +=  "TAB CLOSEALLOTHERS" + "\n";
        macro +=  "SET !ERRORIGNORE NO" + "\n";
        macro +=  "SET !LOOP {{i}}" + "\n";
        macro +=  "TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:ProfileNameTruncated<SP>account-group EXTRACT=TXT" + "\n";

    var savemacro; 
        savemacro =  "CODE:";
        savemacro +=  "SET !EXTRACT {{tname}}" + "\n";
        savemacro +=  "SAVEAS TYPE=EXTRACT FOLDER=* FILE=Names.csv" + "\n";
        savemacro +=  "WAIT SECONDS=2" + "\n";


    for (i=1;i<=10000000; i++) {
     ret = iimSet("i", i);
    retcode = iimPlay(macro)
     var tname = iimGetLastExtract(1);
    if (tname == "#EANF#"){
     tname = "";
    }
ret = iimSet("tname", tname);
 iimPlay(savemacro)
}

将代码复制到记事本中并保存为* .js扩展名
这段代码将替换#EANF#没有任何东西,即你将获得空行。如果提取的值是#EANF# 将i的值更改为TAG POS开始的编号。现在它是1。