0
私はNode.jsで手をかけています。私は、ページをスキャンし、すべてのリンクをjsonファイルに戻す単純なクローラを構築したいと考えています。しかし、スクリプトを実行すると、0のリンクが返されます。ここでノード.JSクローラからJSONへの出力が空です
は、その全体が私のコードです:
var request = require('request');
var cheerio = require('cheerio');
var fs = require("fs");
var url = 'https://stackoverflow.com/questions';
//Create the blank array to fill:
var obj = {
table: []
};
var i = 0;
request(url, function(err, resp, body){
$ = cheerio.load(body);
links = $('a'); //jquery get all hyperlinks
$(links).each(function(i, link){
var actualLink = $(link).attr('href');
obj.table.push({id: i, url:actualLink}); //add some data
i++;
});
});
var json = JSON.stringify(obj);
console.log(json);
の端子で出力がそうである:
$ !!
ノードが
{ "テーブル":[]} nodetest.js
を、これは空白になって、なぜ誰もが見ることができますか?あなたは内部obj
要求の成功コールバックを使用する必要があります
をこれは買いが、その後何もしなかった成功したファイルを言います。私は "/ tmp/test"を "test.json"に変更しました。 – JamesG