最近做网站爬虫,爬取到的数据保存到一个name.json文件中,数据结构大概是这样的:
在这里插入图片描述
可以利用nodeJS把这个json文件转成xlsx文件输出,当然浏览器环境也可以做到,网上有相关的方法。
我这里使用了fs模块和第三方模块json2xls,所以要先安装json2xls

npm install json2xls -D

// 在jsonToExcel.js中先引入核心模块

const fs = require('fs')
const json2xls = require('json2xls');

然后利用readFile读取json文件,在回调函数中遍历数组,在对象temp中定义表格需要展示的字段,再把temp添加到一个新的数组jsonArray。接着把jsonArray作为参数去调用json2xls方法,最后使用writeFileSync输出xlsx文件。

fs.readFile('name.json','utf8',(err,data)=>{
  if (err) throw err;
  const json = JSON.parse(data);
  const jsonArray = [];
  json.forEach(function(item){
    let temp = {
      '类型' : item.type,
      '问题' : item.question,
      '答案' : item.trueAnswer
    }
    jsonArray.push(temp);
  });
  
  let xls = json2xls(jsonArray);
  
  fs.writeFileSync('name.xlsx', xls, 'binary');
})
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐