【发布时间】:2020-02-11 16:52:37
【问题描述】:
所以我有这样的代码抓取。但是当我保存到 json 文件时这个代码错误
按摩错误 = TypeError:将循环结构转换为 JSON 从具有构造函数“节点”的对象开始 属性 'children' -> 带有构造函数 'Array' 的对象 索引 0 -> 具有构造函数“节点”的对象 属性“父”关闭圆圈 在 JSON.stringify()
const axios = require('axios');
const cheerio = require('cheerio');
var fs = require('fs');
const url = 'https://icons8.com/line-awesome';
axios(url)
.then(response => {
const html = response.data;
const $ = cheerio.load(html)
const listIcons = $('.icons-group');
const list = [];
listIcons.each(function () {
const title = $(this).find('.icons-title').text();
const icons = [];
const panjang = $(this).find('.name');
for (let i = 0; i < panjang.length; i++) {
icons.push($(panjang[i]).text());
}
// console.log(panjang.length);
// console.log(panjang[0]);
list.push({
title,
icons,
});
console.log(list);
});
fs.writeFile('nama.json', JSON.stringify(listIcons, null, 4));
})
.catch(console.error);
【问题讨论】:
-
请参阅stackoverflow.com/questions/11616630/…。它提出了避免 JSON 中循环结构的方法。
标签: javascript