Javascript node.js将结果写入文件

Javascript node.js将结果写入文件,javascript,node.js,web-scraping,osmosis,Javascript,Node.js,Web Scraping,Osmosis,我已经成功地抓取了多个具有相同结构的站点。当我打印结果时,它们看起来还可以,现在我想把它们全部保存到一个文件中 问题是只有最后一个刮取的MyData对象保存到文件中 var osmosis = require('osmosis'); var jsonfile = require('jsonfile') var sitesToHandle = ['site1', 'site2', 'site3', 'site4'] sitesToHandle.forEach((urlToHandle) =>

我已经成功地抓取了多个具有相同结构的站点。当我打印结果时,它们看起来还可以,现在我想把它们全部保存到一个文件中

问题是只有最后一个刮取的MyData对象保存到文件中

var osmosis = require('osmosis');
var jsonfile = require('jsonfile')
var sitesToHandle = ['site1', 'site2', 'site3', 'site4']
sitesToHandle.forEach((urlToHandle) => {
osmosis.get(urlToHandle)
.find('.productList')
.set({
  MyData: [
    {
        'ID': 'a.number',
        'Product': 'a.productname',
        'Price': 'a.price',
    } 
  ]
})
.data(function(document) {
  console.log(document);
    var file = 'osmosis.json'
    jsonfile.writeFile(file, document)
  });
});

每次迭代都要重写文件

必须使用
{flag:'a'}
将数据附加到现有JSON文件:

jsonfile.writeFile(file, document, {flag: 'a'})