CasperJS脚本永远不会退出

时间:2015-04-01 13:41:21

标签: windows cmd casperjs

我的CasperJS脚本永远不会停止执行。

var casper = require('casper').create();

casper.userAgent('Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36(KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36');

casper.start('https://www.google.co.in/',function(){    
  casper.wait(3000,function(){
    this.echo(this.getTitle());
  });
});
casper.run();

2 个答案:

答案 0 :(得分:6)

看起来好像CasperJS永远不会退出。这只是Windows上的一个问题。你可能会看到这样的事情:

C:\> casperjs script.js

C:\> Some script output
More script output
_

它与CasperJS的安装和调用方式有关。这种情况通常发生在安装了cygwin,然后通过NPM安装CasperJS时。 NPM会检测到你有cygwin并创建一个特殊的批处理文件来启动CasperJS。有一个错误是如何处理整个情况,但它不会影响CasperJS的功能。

如果按Enter,您将再次看到提示:

C:\> casperjs script.js

C:\> Some script output
More script output

C:\> _

如果您在GitHub上使用主分支中的CasperJS,您将获得一个正确的exe文件,该文件在没有这些问题的情况下执行。见Installing from git。这样做的好处是你现在可以使用PhantomJS 2,因为当前版本的1.1-beta3无法实现。

答案 1 :(得分:0)

尝试在运行方法上添加退出。

casper.run(function() {
  this.exit();
});