Как удалить закрывающие теги из HTML, которые не имеют соответствия без использования регулярных выражений? - PullRequest
0 голосов
/ 26 мая 2018

Возьмите следующий 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, но ни один из них не устранил проблему.

...