casperjs如何通过空间传递参数?

时间:2017-02-06 13:53:34

标签: casperjs

casperjs script.js "myurl" "myemail" "my name"

这是脚本:

url = (casper.cli.get(0));
email = (casper.cli.get(1));
name = (casper.cli.get(2));

this.echo(name);
console.log(name);

结果是:my(而不是my name)。

我也试过单引号。

1 个答案:

答案 0 :(得分:4)

您可以使用反斜杠转义空格,不要使用引号,例如:

 casperjs test.js myurl myemail my\ name

我不确定它是否依赖于你正在使用的控制台,在我工作的ubuntu(docker)下:

var casper = require('casper').create();
var targetUrl = 'http://www.test.com/';

casper.start(targetUrl, function() {
  url = (casper.cli.get(0));
  email = (casper.cli.get(1));
  name = (casper.cli.get(2));
  this.echo(url);
  this.echo(email);
  this.echo(name);
  console.log(name);
});

casper.run();

结果是:

myurl
myemail
my name
my name

对于有效的Windows命令行:

casperjs test.js myurl myemail \"my name\"