0

xmlparser2 を使用して xml を解析しています。以下は私のコードです

var htmlparser = require('htmlparser2');
var fs = require('fs');
var sitemapUrls = [];
var parser = new htmlparser.Parser({
    ontext: function(text){
        if(text.match(/foo/)){
            sitemapUrls.push(text);
        }
    }
 });
 fs.createReadStream('./sitemap-index.xml').pipe(parser).on('end',function(){
   console.log(sitemapUrls.length);
 });

解析が完了したことを知らせる htmlparser2 のイベントがあるかどうかを見つけることができません。

sitemapUrls 配列の長さを出力したい。

前もって感謝します

4

1 に答える 1

1

解析が完了すると呼び出されるイベント「onend」を追加する必要があるハンドラーで答えを見つけました

var parser = new htmlparser.Parser({
    ontext: function(text){
        if(text.match(/myntra/)){
            sitemapUrls.push(text);
        }
    },
    onend: function(){
        console.log(sitemapUrls.length);
    }
});
于 2014-01-22T08:35:26.077 に答える