我使用casperjs,我想在rantom时间间隔内移动到站点。 我制作了这样的代码,但它没有用:
function getRandomIntFromRange(min, max) {
return Math.round(Math.random() * (max - min)) + min;
}
var casper = require('casper').create();
casper.start('http://stackoverflow.com/');
casper.on('remote.message', function(msg) {
this.echo('remote message caught: ' + msg);
});
casper.then(function() {
for (i=0; i<=5; i++) {
delay = getRandomIntFromRange(1000, 5000);
this.wait(delay, (
function(j) {
return function() {
this.echo('Test ' + j + '; delay: ' + delay);
};
})(i));
}
});
casper.run();
输出是这样的:
测试0;延迟:1320
测试1;延迟:1320
测试2;延迟:1320
测试3;延迟:1320
测试4;延迟:1320
测试5;延迟:1320
答案 0 :(得分:2)
casper.then(function() {
for (i=0; i<=5; i++) {
delay = getRandomIntFromRange(1000, 5000);
this.wait(delay, (
function(j,d) {
return function() {
this.echo('Test ' + j + '; delay: ' + d);
};
})(i,delay));
}
});