"URL GOTO" 不断从 iMacros 循环 javascript
"URL GOTO" keeps looping from iMacros javascript
我在文件夹 ~/iMacros/Macros/ 中有两个相关的文件。一个是宏 (TodaysEvents.iim),如下所示:
VERSION BUILD=8920312 RECORDER=FX
TAB T=1
URL GOTO=http://www.event.com/schedual
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
TAG POS={{loop}} TYPE=A ATTR=TXT:02 EXTRACT=HTM
SAVEAS TYPE=EXTRACT FOLDER=/root/Desktop FILE=TodaysEvents.csv
TAB CLOSE
另一个是 javascript 文件 (TodaysEvents.js),如下所示:
var i;
for (i = 1; i < 130; i++) {
iimSet("loop", i);
iimPlay("TodaysEvents");
}
我把它们一起使用的方式是:
firefox "imacros://run/?m=TodaysEvents.js"
当我使用这些文件时,我希望通过只加载一次网站来完成 imacros 脚本中的所有循环。但是,为了从命令行执行此操作,我必须从 JavaScript 文件中 运行 它,因此这两个文件。问题是,虽然循环有效,但每次循环都会重新加载网站。我应该编辑哪个文件,以及如何编辑,以便只加载一次站点,并执行所有提取循环?
只使用一个文件"TodaysEvents.js"。让它像这样:
const L = "\n";
iimPlayCode("TAB T=1" + L + "URL GOTO=http://www.event.com/schedual" + L);
for (i = 1; i < 130; i++) {
iimSet("loop", i);
iimPlayCode("SET !ERRORIGNORE YES" + L + "TAG POS={{loop}} TYPE=A ATTR=TXT:02 EXTRACT=HTM" + L + "SAVEAS TYPE=EXTRACT FOLDER=/root/Desktop FILE=TodaysEvents.csv" + L);
}
我在文件夹 ~/iMacros/Macros/ 中有两个相关的文件。一个是宏 (TodaysEvents.iim),如下所示:
VERSION BUILD=8920312 RECORDER=FX
TAB T=1
URL GOTO=http://www.event.com/schedual
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
TAG POS={{loop}} TYPE=A ATTR=TXT:02 EXTRACT=HTM
SAVEAS TYPE=EXTRACT FOLDER=/root/Desktop FILE=TodaysEvents.csv
TAB CLOSE
另一个是 javascript 文件 (TodaysEvents.js),如下所示:
var i;
for (i = 1; i < 130; i++) {
iimSet("loop", i);
iimPlay("TodaysEvents");
}
我把它们一起使用的方式是:
firefox "imacros://run/?m=TodaysEvents.js"
当我使用这些文件时,我希望通过只加载一次网站来完成 imacros 脚本中的所有循环。但是,为了从命令行执行此操作,我必须从 JavaScript 文件中 运行 它,因此这两个文件。问题是,虽然循环有效,但每次循环都会重新加载网站。我应该编辑哪个文件,以及如何编辑,以便只加载一次站点,并执行所有提取循环?
只使用一个文件"TodaysEvents.js"。让它像这样:
const L = "\n";
iimPlayCode("TAB T=1" + L + "URL GOTO=http://www.event.com/schedual" + L);
for (i = 1; i < 130; i++) {
iimSet("loop", i);
iimPlayCode("SET !ERRORIGNORE YES" + L + "TAG POS={{loop}} TYPE=A ATTR=TXT:02 EXTRACT=HTM" + L + "SAVEAS TYPE=EXTRACT FOLDER=/root/Desktop FILE=TodaysEvents.csv" + L);
}