Pau*_*ton 3 javascript xml cdata node.js cheerio
我在nodejs中使用cheerio来解析一些rss feed.我抓住所有将它们放入阵列的物品.我使用3个测试源,它们都为每个"item"元素都有一个"description"子元素.在其中一个Feed中,整个"描述"被包装为CDATA,我无法获得它的价值.这是一个缩写的代码片段
//Open the xml document with cheerio
$ = cheerio.load(arrXmlDocs[i],{ ignoreWhitespace : true, xmlMode : true});
//Loop through every item
$('item').each(function(i, xmlItem){
//array to hold each item being converted into an array
var tempArray = [];
//Loop through each child of <item>
$(xmlItem).children().each(function(i, xmlItem){
//Get the name
tempArray[$(this)[0].name] = $(this).text();
}
}
Run Code Online (Sandbox Code Playgroud)
正如所料,没有CDATA的两个RSS提供给我一个像这样的数组
[
[
name: 'name of episode',
description:'description of episode',
pubdate: 'published date'
],
[
name: 'name of episode',
description:'description of episode',
pubdate: 'published date'
]
]
Run Code Online (Sandbox Code Playgroud)
并且具有CDATA描述的Feed看起来像这样
[
name: 'name of episode',
pubdate: 'published date'
],
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:为什么cheerio没有返回CDATA中包含的值/如何让它返回这些值.
| 归档时间: |
|
| 查看次数: |
3062 次 |
| 最近记录: |