我在使用Cheerio抓取HTML元素时得到一个空字符串数组。
我为Cheerio提供了现有HTML元素的DOM路径。这些DOM Paths在浏览器中使用document.querySelector或jQuery返回HTML元素。
Cheerio正在返回初始化对象而不是预期的HTML元素。链接.text()方法返回“”。
示例:
let domArr: [ 'html>body>div:nth-child(8).content>div:nth-child(4).spacer>div#siteTable.sitetable.linklisting>div:nth-child(1)#thing_t3_6smcs6.thing.id-t3_6smcs6.odd.link>div:nth-child(5).entry.unvoted>div:nth-child(1).top-matter>p:nth-child(1).title>a.title.may-blank',
'html>body>div:nth-child(8).content>div:nth-child(4).spacer>div#siteTable.sitetable.linklisting>div:nth-child(3)#thing_t3_6slbyx.thing.id-t3_6slbyx.even.gilded.link>div:nth-child(5).entry.unvoted>div.top-matter>p:nth-child(1).title>a.title.may-blank.outbound' ]
let textArr = [];
domArr.forEach((element) => {
elementText = $(element).text();
textArr.push(elementText);
});
console.log(textArr) // ["", ""]