Я очищаю HTML-страницу, но пытаюсь получить один раздел страницы. Нет классов, идентификаторов или чего-то супер полезного, что я могу подключить к Cheerio, как мне кажется (я новичок в этом, поэтому я знаю, что мое невежество играет роль).
Код выглядит так.
<b> Here's some text I don't want</b>
<b> More text I don't want</b>
<hr style = "width:90%; padding: 0>
<b> text I want </b>
<b> text I want </b>
<b> text I want </b>
<b> text I want </b>
<hr style = "width:90%; padding: 0>
<b> Here's some text I don't want</b>
<b> More text I don't want</b>
Есть ли способ получить HTML-код между двумя элементами <hr>
с помощью Cheerio? Оба элемента совершенно одинаковы.
Если вы можете определить, какой nth использовать, вы можете попробовать селектор nth-of-type
, например.
hr:nth-of-type(1)
Вы также можете использовать nth-child
Вы можете начать с первого часа и повторять next(), пока не дойдете до второго:
let el = $('hr').first()
while(el = el.next()){
if (el.length === 0 || el.prop('tagName') === 'HR') break
text += el.text() + "\n"
}
Вам нужно будет настроить его для вашего конкретного html.
этот
el.prop
метод, похоже, не работает... какие-нибудь подсказки?