0
casper.js代码如下所示。从Visual Studio运行进程
var casper = require('casper').create();
var fs = require('fs');
var path = 'test.txt';
fs.touch(path);
casper.start('http://www.google.com', function() {
fs.write(path, this.getHTML(), 'w');
});
casper.run();
我打电话给这个过程。
System.Diagnostics.Process.Start(@"C:\CasperJS\casperjs-casperjs-b4f7669\bin\casperjs", @"C:\casper\casper.js");
,当我在命令行中运行
>casperjs casper.js
但不是当我尝试从Visual Studio运行它的工作原理。任何想法为什么?
它给出了什么错误?另外,我可以假设代码只是下载一个HTML并将其存储在文件中,当您可以使用WebClient在C#中完成时,为什么将它与外部程序复杂化? – Gusman
WebClient无法以无头浏览器的方式执行JavaScript。它不会给出任何错误,程序运行并关闭而不显示任何文本 – Mike
嗯,我不是非常精通casper,但'this.getHTML()'只会得到html内容发送,不是吗?无论如何,这听起来像是如果程序用完了它的正确目录,而不是Start重载接受两个字符串使用接受ProcessStartInfo并将WorkingDirectory设置为正确的那个,对于您发布的命令行,我认为正确工作目录将存储.js,然后你不需要传递参数的完整路径,只需传递“casper.js” – Gusman