Я работаю над созданием парсера RSS, который преобразует RSS в JSON.В настоящее время я завершила превращение RSS-канала в 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
.Поэтому я изучаю извлечение XML из URL-адреса RSS-канала.Я не нашел ни одного пакета npm для извлечения XML из RSS-канала.Любые предложения по этому поводу?