我已经处理了所有事情。但不幸的是它返回了“未定义”的数据。我尝试了许多不同的方法来从该网站获取数据。不成功。我在其他论坛上发布了这个问题,没有人能够解决这个问题来处理完整的数据提取。
我需要像这样保存数据 91.228.53.28:8089 每行一个所有行。
var jsLF="\n";
var ret,ret1,ret2,ret3,ret_val;
var p1; //open url
p1 = "CODE:";
p1 += "URL GOTO=http://www.proxynova.com/proxy-server-list/country-de/" + jsLF;
var p2; //extract 1st value ip save to tmp VAR1
p2 = "CODE:";
p2 += "SET !VAR1 {{!EXTRACT}}" + jsLF;
p2 += "TAG POS={{i}} TYPE=TD ATTR=* EXTRACT=TXT" + jsLF;
p2 += "SET !EXTRACT NULL" + jsLF;
var p3; //add constant value =":" Save to tmp VAR2
p3 = "CODE:";
p3 += "SET !VAR2 :" + jsLF;
//p2 += "SET !EXTRACT NULL" + jsLF;
var p4; //extract port number
p4 = "CODE:";
p4 += "TAG POS={{j}} TYPE=TD ATTR=* EXTRACT=TXT" + jsLF;
p4 += "SET !VAR3 {{!EXTRACT}}" + jsLF;
p4 += "SET !EXTRACT NULL" + jsLF;
var p5final; //mer 3 parts to get final and save
p5final = "CODE:";
p5final += "ADD !EXTRACT {{!VAR1}}" + jsLF;
p5final += "ADD !EXTRACT {{!VAR2}}" + jsLF;
p5final += "ADD !EXTRACT {{!VAR3}}" + jsLF;
p5final += "SAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=ip-address.csv" + jsLF;
//ADD !VAR1 {{!EXTRACT}} // append! may be this is correct
ret = iimPlay(p1);
for(var i=1;i<=20;i=i+6) //1st loop extract 1st part of value
{
iimSet("i", i);
iimPlay(p2);
iimSet("i",i);
ret_val = iimGetExtract();
if(ret_val=="#EANF#" || ret_val=="undefined" || ret_val==null || ret_val=="" )
{
iimSet("i",i+1);
}
ret1=iimPlay(p3); //extract 2nd part of value
iimSet("j",i+1);
ret2 = iimPlay(p4); //extract 3rd part of value
iimSet("j",i+1);
ret3 = iimPlay(p5final); //write final concatinated value to file (Part1+part2+part3)
}
您不将变量存储在任何地方。使用iimPlay()
擦除每个变量,就像重新开始一样,所以你的最终宏,写入文件的宏不知道!VAR1, !VAR2
等等。你应该这样做:
var jsLF="\n";
var ret,ret1,ret2,ret3,ret_val;
var p1; //open url
p1 = "CODE:";
p1 += "URL GOTO=http://www.proxynova.com/proxy-server-list/country-de/" + jsLF;
var p2; //extract 1st value ip save to tmp VAR1
p2 = "CODE:";
p2 += "TAG POS={{i}} TYPE=TD ATTR=* EXTRACT=TXT" + jsLF;
var p3; //add constant value =":" Save to tmp VAR2
p3 = "CODE:";
p3 += "SET !VAR2 :" + jsLF;
var p4; //extract port number
p4 = "CODE:";
p4 += "TAG POS={{j}} TYPE=TD ATTR=* EXTRACT=TXT" + jsLF;
var p5final; //mer 3 parts to get final and save
p5final = "CODE:";
p5final += "ADD !EXTRACT {{myvar1}}" + jsLF;
p5final += "ADD !EXTRACT :" + jsLF;
p5final += "ADD !EXTRACT {{myvar2}}" + jsLF;
p5final += "SAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=ip-address.csv" + jsLF;
ret = iimPlay(p1);
for(var i=1;i<=20;i=i+6) //1st loop extract 1st part of value
{
iimSet("i", i);
iimPlay(p2);
iimSet("i",i);
myvar1 = iimGetExtract();
if(ret_val=="#EANF#" || ret_val=="undefined" || ret_val==null || ret_val=="" )
{
iimSet("i",i+1);
}
ret1=iimPlay(p3); //extract 2nd part of value
iimSet("j",i+1);
ret2 = iimPlay(p4);
myvar2 = iimGetExtract(); //extract 3rd part of value
iimSet("myvar1",myvar1);
iimSet("myvar2",myvar2);
ret3 = iimPlay(p5final); //write final concatinated value to file (Part1+part2+part3)
}
改进我提供给您的这段代码,请不要问同样的问题两次:)并且始终小心您放置的位置SET !EXTRACT NULL
(当你需要 javascript 中的值时,永远不要结束)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)