我试图从CasperJS执行nodejs脚本。这应该可以从PhantomJS childprocess
库中实现。但它似乎并没有为我工作。它没有给出任何错误,但它也没有执行节点脚本。因为该脚本发出推送通知。当我直接从命令运行脚本然后它工作正常。但不是来自我的CasperJS脚本。
var childProc = require("child_process");
var casper = require('casper').create({
viewportSize: {width: 800, height: 400}
});
var utils = require("utils");
casper.start('http://www.google.com', function() {
this.echo('Home page opened');
this.echo(this.getTitle());
childProc.execFile('C:\\Google Drive\\nodejs\\push.js', [], null, function (err, stdout, stderr){});
this.exit();
});
任何人都知道我做错了什么?
答案 0 :(得分:0)
你有两个问题:
casper.start('http://www.google.com', function() {
this.echo('Home page opened');
this.echo(this.getTitle());
childProc.execFile('C:\\Google Drive\\nodejs\\push.js', [], null, function (err, stdout, stderr){
utils.dump(arguments);
casper.echo("Exiting..."):
casper.exit();
});
}).run(function(){/* This prevents CasperJS from exiting */});
是异步功能。尝试:
{{1}}