我正在创建JSON数据,但我无法更改数据的sub
属性。
对于我的第一个承诺,我希望每个对象的sub
属性包含值theonion
。对于第二个承诺,我希望它是nottheonion
。但是,两个文件(onion.json和nottheonion.json)最终都是相同的,都包含来自r / nottheonion的数据
这是我的代码。
function parse(html, subreddit) {
var $ = cheerio.load(html);
$("div#siteTable > div.link").each(function(idx) {
var title = $(this).find('p.title > a.title').text().trim();
posts.push({ sub: subreddit, content: title });
});
var posts_as_json = JSON.stringify(posts);
return posts_as_json;
}
var append = file => content => fsp.appendFile(file, content);
rp(onion_url)
.then(html => parse(html, "onion"))
.then(append('onion.json'))
.then(() => console.log('Onion Success'))
.catch(err => console.log('Error: ', err));
rp(not_onion_url)
.then(html => parse(html, "nottheonion"))
.then(append('not_onion.json'))
.then(() => console.log('Not Onion Success'))
.catch(err => console.log('Error: ', err));
答案 0 :(得分:0)
试试这个:
function parse(html, subreddit) {
var p = subreddit;
var $ = cheerio.load(html);
$("div#siteTable > div.link").each(function(idx) {
var title = $(this).find('p.title > a.title').text().trim();
posts.push({ sub: p, content: title });
});
var posts_as_json = JSON.stringify(posts);
return posts_as_json;
}