Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Loops 尝试使用imacros循环搜索关键字_Loops_Imacros_Keyword Search - Fatal编程技术网

Loops 尝试使用imacros循环搜索关键字

Loops 尝试使用imacros循环搜索关键字,loops,imacros,keyword-search,Loops,Imacros,Keyword Search,我有一个csv文件,其中包含128个不同的关键字(1列,128行),我正试图在当前页面上搜索这些关键字,如果它找到其中一个,则继续执行一项非常简单的任务,否则会提示我没有找到任何关键字 目标是实现以下功能: SET !DATASOURCE ... 'already have this part working SET !DATASOURCE_COLUMNS 1 SET !DATASOURCE_LINE {{!LOOP}} {{!LOOP}}

我有一个csv文件,其中包含128个不同的关键字(1列,128行),我正试图在当前页面上搜索这些关键字,如果它找到其中一个,则继续执行一项非常简单的任务,否则会提示我没有找到任何关键字

目标是实现以下功能:

SET !DATASOURCE ...                            'already have this part working
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_LINE {{!LOOP}}
{{!LOOP}} = 1
if TAG POS=1 TYPE=* ATTR=TXT:{{!COL1}} = true   'not actual code from here down 
move to next step
elseif {{!LOOP}} +1 = 129
PROMPT "No keyword was found"
END                                             'killing the script
else 
loop++                                          'loop and search for next keyword

如果重要的话,关键字实际上是IP地址,最后一个块丢失了,即“192.168.0”。不确定它是否会影响格式化。我相信有一种更好的方法可以通过搜索来实现。如果关键字存在,我只是在查找0或1(是或否响应),如果找到,则继续以下链接。

如果要执行条件语句,如if,则需要使用脚本语言。我在下面提供了一个Javascript示例,它遵循您的伪代码

var datasource, macro, retcode, numberOfLinesInDatasource, aTagWasFound;

datasource = "somedatasource";
numberOfLinesInDatasource = 128;
aTagWasFound = false;

macro = "CODE:";
// change link to a different website
macro += "URL GOTO=http://stackoverflow.com/questions/25467549/trying-to-do-a-looped-search-for-keywords-with-imacros\n";
retcode = iimPlay(macro);

// loop through all lines in datasource
for (var i = 0; i < numberOfLinesInDatasource; i++)
{
  // get the datasource value at this line
    macro = "CODE:";
    macro += "SET DATASOURCE " + datasource + "\n";
    macro += "SET DATASOURCE_COLUMNS 1\n";
    macro += "SET DATASOURCE_LINE " + i + "\n";
    macro += "ADD !EXTRACT {{!COL1}}\n";
    retcode = iimPlay(macro);
    keyword = iimGetLastExtract();

    // search for this keyword
    macro = "CODE:";
    macro += "TAG POS=1 TYPE=* ATTR=TXT:" + keyword + "\n";
    retcode = iimPlay(macro);

    // if retcode is 1 then the tag was found move on to next step
    if (retcode === 1){
        // move on to next step
        aTagWasFound = true;
        break;
    }
    // tag not found try the next value
}

if (!aTagWasFound)
{
    alert("No keyword found");
} else 
{
    alert("Tag Found");
}
var数据源、宏、retcode、numberOfLinesInDatasource、aTagWasFound;
datasource=“somedatasource”;
numberOfLinesInDatasource=128;
aTagWasFound=false;
宏=“代码:”;
//将链接更改为其他网站
宏+=“URL转到=http://stackoverflow.com/questions/25467549/trying-to-do-a-looped-search-for-keywords-with-imacros\n”;
retcode=iimPlay(宏);
//循环遍历数据源中的所有行
对于(变量i=0;i
我的回答见下一个答案,您无法在注释中高效地添加代码。