从RSS feed提取XML

时间:2019-03-04 17:29:41

标签: xml xml-parsing rss

我正在创建一个RSS解析器,它将RSS转换为JSON。目前,我已经完成了将RSS feed转换为JSON的工作。但是我必须对名称空间进行硬编码,这是我想避免的事情。我正在使用rss-parser软件包。这是一个代码示例:

const Parser = require('rss-parser');

const parser = new Parser({
    customFields: {
    item: [
      ['event:parkids', 'event:parkids'],
      ['event:parknames', 'event:parknames'],
      ['event:startdate', 'event:startdate'],
      ['event:enddate', 'event:enddate'],
      ['event:starttime', 'event:starttime'],
      ['event:endtime', 'event:endtime'],
      ['event:contact_phone', 'event:contanct_phone'],
      ['event:location', 'event:location'],
      ['event:categories', 'event:categories'],
      ['event:coordinates', 'event:coordinates'],
      ['event:image', 'event:image'],
    ]
  }
});


const sendRes = (status, body) => {
   const response = {
       isBase64Encoded: true | false,
       statusCode: status,
       headers: {
           "Content-Type": "application/json",
       },
       body: JSON.stringify(body),
   };

   return response;
};


const convertRssIntoJson = rssFeed => {
   return new Promise((res, rej) => {
       parser.parseURL(rssFeed, (err, rss) => {
           if (err) {
               return rej(err);
           }
           return res(rss);
       });
   });
};

exports.handler = async (event) => {
    let rssFeed = event.queryStringParameters.rssFeed;

    return sendRes(200, await convertRssIntoJson(rssFeed));
};

如您所见,我必须对命名空间event字段进行硬编码。因此,我正在研究从RSS提要URL中提取XML。我还没有找到任何npm包来从RSS URL提要中检索XML。有什么建议吗?

0 个答案:

没有答案