1

こんにちは、casper.jsに次のコードがあります

var casper = require('casper').create({
    pageSettings: {loadImages : true,loadPlugins : false}, 
    logLevel :"debug" ,
    verbose : true, 
    onTimeout : function(){ //what to do if timeout reaches?

        this.echo('Failed to load resource.').exit();       
    },
    onStepTimeout: function(){ //what to do if specific step timeout reaches.

        this.echo('timeout: step '+ this.requestUrl);
    }
    });
    //our userAgent


casper.userAgent('Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0');
casper.echo("Will google.com load in less than 2000 ms?");
casper.options.timeout = 2400100; //4 Minutes for process to complete it self.
casper.options.stepTimeout = 24000; //24 seconds for each step to complete it self.
casper.start("http://www.google.com/", function() {
    this.echo("Google done!");
    this.clear();
});
casper.thenOpen("http://www.bing.com/", function() {
    this.echo("Bing done!");
    this.clear();
});

casper.run(function() { 
this.echo('Finished everything!');
this.exit();
});

このコードでは、 stepTimeout を 2400ms にしていますが、このタイムアウトに達すると、スクリプトはタイムアウトをエコーし​​ます: ステップ + ステップ名ですが、次のインスタンスまたはステップに移動しません...私が望むのは、その stepTimeout に達したときですそのインスタンスは即座に exit() し、次の thenOpen() インスタンスに移動する必要があります...これを回避する方法はありますか?

4

1 に答える 1