Node.js: parsing di un feed RSS

Effettuare il parsing di un feed RSS è un'operazione relativamente semplice in Node.js.

Installiamo il modulo specifico:


npm install feedparser

Quindi effettuiamo il parsing:


'use strict';

var FeedParser = require('feedparser');
var request = require('request');

var req = request('http://site.com/feed/');
var parser = new FeedParser({
  addmeta: false
});
var items = [];

req.on('error', function (error) {
    // Gestione errori
});
req.on('response', function (resp) {
  var stream = this;

  if (resp.statusCode != 200) {
    return this.emit('error', new Error('Bad status code'));
  }

  stream.pipe(parser);
});

parser.on('error', function(error) {
    // Gestione errori
});
parser.on('readable', function() {
  var stream = this,
      item;

      while (item = stream.read()) {
        items.push(item);
      }

});
parser.on('end', function(err) {
    if(!err) {
        // Parsing del feed
        items.forEach(function(item) {
            console.log(item);
        });
    }
});

Torna su