Возьмите следующий HTML-код:
<li class='item'>
<ul class="lvprices left space-zero" _sp="p2045573.m1686.l8">
<li class="lvshipping">
<span class="ship">
<span>
<span class="bfsp">Free Shipping</span>
</span>
</span>
</li>
</li>
</ul>
<ul class="">
<li class="timeleft">
<span class="tme">
<span>May-25 01:57</span>
</span>
</li>
</ul>
</li>
Прямо перед окончанием первого элемента ul
, есть два тега </li>
подряд.Один из них не имеет соответствия и вызывает проблему при использовании lxml XPath, когда при выборе элемента списка class="item"
возвращает только первое </ul>
и действует так, как если бы весь второй </ul>
не существовал внутри элемента списка,
Есть ли способ (без использования регулярных выражений) удалить второй </li>
, чтобы lxml мог правильно его проанализировать?Я пытался использовать BeautifulSoup и html.parser, но ни один из них не устранил проблему.