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);
});
}
});