我正在使用CasperJS进行数据抓取项目。我已经启动并运行了我的初始脚本开始工作。我把它需要输出到控制台。现在我需要弄清楚如何将我需要的数据放入文件中,以便我可以将其导入我的电子商务管理软件。有没有人有任何关于如何将数据吐出到文件中的提示,最好是CSV或我可以用Excel打开的东西。
到目前为止,我的工作代码看起来像这样:
var casper = require('casper').create();
casper.start('http://www.123FAKE.com/');
casper.then(function(){
this.thenOpen('http://www.123FAKE.com/products/?partNumber=1131180961', function(){
this.echo(this.getHTML('table.partFitmentTable', true));
});
});
casper.run();
非常感谢任何建议!
答案 0 :(得分:0)
CSV文件是一个非常简单的文本文件。您可以将文件文本构建为预期格式的字符串,然后使用fs module将字符串写入文件。
为此,您可能需要将表格刮成适当的形式。您只能直接从casper.evaluate()
访问DOM,这是沙盒页面上下文。
var csv = casper.evaluate(function(){
var trList = document.querySelectorAll("table.partFitmentTable tr");
return [].map.call(trList, function(tr){
return [].map.call(tr.querySelectorAll("td"), function(td){
td.innerHTML; // some representation of the cell
}).join(",");
}).join("\n");
});
var fs = require("fs");
fs.write("data.csv", csv);