将变量从javascript传递到iMacros
问题描述:
我想运行一个iMacro以节省大量网页(论坛上的线程)。我在VBA中工作过,但无法运行iMacro。将变量从javascript传递到iMacros
我现在试过javascript。我想将一些基本参数(线程号,起始页码,保存页数,文件类型)传递给iMacro,然后循环直到所有页面都保存完毕。这是我到目前为止所提出的。
<script type="text/javascript">
<!--
var THRNO = prompt("Enter thread number”);
var PGST = prompt("Enter page start number”);
var PGNO = prompt("Enter number of pages to save”);
var THRNM = prompt("Enter thread name/identifier for files”);
var FLTP = prompt("Enter save file type”);
var CNTR = 1
do {
var URLN = "http://www.mysite.co.uk/my-forum/showthread.php?t=" & THRNO & "&page=" & CNTR
var FLNM = THRNM & ".html"
iimSet("URLN", URLN)
iimSet("FLTP", FLTP)
iimSet("FLNM", FLNM)
iimPlay("iMacroUniversal.iim")
CNTR = CNTR + 1
} while (CNTR < PGNO);
//-->
</script>
我iMacro的代码是
URL GOTO=URLN
SAVEAS TYPE=FLTP FOLDER=D:\MyFolder FILE=FLNM
WAIT SECONDS=2
当我在Excel中写道:这是VBA代码,它将把所有的参数和开拓iMacros的接口,但不运行iMacro本身(不错误消息 - 什么都没有发生)。我知道我可能在混合和改编我的编码语言。
答
var macro;
macro ="CODE:";
macro +="URL GOTO={{URLN}}"+"\n";
macro +="SAVEAS TYPE={{FLTP}} FOLDER=D:\MyFolder FILE={{FLNM}}"+"\n";
macro +="WAIT SECONDS=2"+"\n";
var THRNO = prompt("Enter thread number”);
var PGST = prompt("Enter page start number”);
var PGNO = prompt("Enter number of pages to save”);
var THRNM = prompt("Enter thread name/identifier for files”);
var FLTP = prompt("Enter save file type”);
var CNTR = 1
do {
var URLN = "http://www.mysite.co.uk/my-forum/showthread.php?t=" + THRNO + "&page=" + CNTR;
var FLNM = THRNM + ".html"
iimSet("URLN", URLN)
iimSet("FLTP", FLTP)
iimSet("FLNM", FLNM)
iimPlay(macro)
CNTR = CNTR + 1;
} while (CNTR < PGNO);
//-->
把它放在.js文件中,看它能否正常工作。
发现流氓“&”符号。对不起 - 还在想着VBA。现在改变了他们。 – shycoder 2014-09-21 11:13:53