为什么cheerio.load()函数不能正常工作
const cheerio = require('cheerio');
const HTML = `<tbody>
<tr>
<th>
Team Name
</th>
<th>
Year
</th>
<th>
Wins
</th>
<th>
Losses
</th>
</tr>
</tbody>
`;
const $ = cheerio.load(HTML);
const text = $('tr').text();
console.log(text);
在这里我没有收到文本。为什么??HTML 字符串中是否有任何错误?我无法确定问题。请帮忙!!!
回答
一个<tbody>元素必须是的子<table>元素,而你不是。
在 Cheerio 的当前版本中,解析器无法从该错误中恢复。编写有效的 HTML。(包装一下你的字符串<table>,并</table>就足够了)。
(如果你降级到 Cheerio 0.22.0,那么那里的解析器可以处理它,但修复输入优先于使用过时的库)。