【问题标题】:Casperjs random delayCasperjs 随机延迟
【发布时间】:2014-10-04 12:46:26
【问题描述】:

我使用 casperjs,我想在随机时间间隔内移动站点。 我做了这样的代码,但是没有用:

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

【问题讨论】:

  • 你还没有说什么没用。请通过编辑您的问题来阐明您的预期结果。

标签: javascript web-crawler phantomjs casperjs


【解决方案1】:
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)); 
  } 
}); 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-26
    • 1970-01-01
    • 2021-06-26
    • 2013-05-21
    • 2020-10-03
    • 2021-10-06
    • 2018-12-03
    • 1970-01-01
    相关资源
    最近更新 更多