将参数传递给casperjs.start

时间:2013-07-16 18:02:16

标签: javascript phantomjs casperjs

我想将数组中的多个URL传递给以下示例代码。

casper.start('http://www.weather.com/', function() {
    this.captureSelector('weather.png', '#wx-main');
});

casper.run();

我想以某种方式创建一个for循环来运行这段代码,同时将URL替换为存储在数组中的URL。

当我试图将任何参数传递给它时,我只是得到错误。

我的'代码':

links = [
    'http://www.cnn.com/',
    'http://www.weather.com/',
    'http://www.google.com/',
    'http://www.stackoverflow.com/'
    ]; //array of links
casper.echo(links.length +' included links.'); //total number of links in array

//begin for loop of urls
for (i = 0; i < links.length; i++) {

    casper.echo(links[i]);
    function captureurl(links[i]); 

}

function captureurl(cpurl){
casper.start(cpurl, function() {
this.captureSelector('capture/capture'+i+'.png', '#body');
});

casper.run();
}

for循环能够列出链接,但每当我尝试将任何参数传递到此处时都会抛出错误:casper.start(cpurl,function(){

感谢任何人可以给我的任何帮助。

1 个答案:

答案 0 :(得分:0)