我已经遍布stackoverflow/google搜索了这个,但似乎无法弄明白.
我正在抓取给定URL页面的社交媒体链接,该函数返回一个带有URL列表的对象.
当我尝试把这些数据写入到不同的文件,将其输出到文件[object Object]而不是预期的:" https://twitter.com/#!/101Cookbooks ",' http://www.facebook.com/ 101cookbooks ']就像我console.log()的结果一样.
这是我在Node中读取和写入文件的悲惨尝试,尝试读取每一行(url)并通过函数调用输入request(line, gotHTML):
fs.readFileSync('./urls.txt').toString().split('\n').forEach(function (line){
console.log(line);
var obj = request(line, gotHTML);
console.log(obj);
fs.writeFileSync('./data.json', obj , 'utf-8');
});
Run Code Online (Sandbox Code Playgroud)
供参考 - gotHTML功能:
function gotHTML(err, resp, html){
var social_ids = [];
if(err){
return console.log(err);
} else if (resp.statusCode === 200){
var parsedHTML = $.load(html);
parsedHTML('a').map(function(i, link){
var href = $(link).attr('href');
for(var i=0; i<socialurls.length; i++){
if(socialurls[i].test(href) && social_ids.indexOf(href) < 0 ) {
social_ids.push(href);
};
};
})
};
return social_ids; …Run Code Online (Sandbox Code Playgroud) 我有package.json下面的
{
"name": "b",
"version": "1.0.0",
"description": "",
"main": ".eslintrc.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
Run Code Online (Sandbox Code Playgroud)
现在,我想"name"从更新b到new-b。我怎样才能以编程方式做到这一点?我尝试了npm config set命令,但它没有更新package.json文件
请告诉我谢谢
javascript ×2
node.js ×2
asynchronous ×1
execution ×1
file-io ×1
npm ×1
package.json ×1
synchronous ×1