Как я могу исключить определенный тег() из Response.xpath?

#python #dom #xpath #extract

Вопрос:

Ниже приведен пример исходного html-кода, я хочу получить результат строки (или списка).

 <font class="news">
    <table border="0" cellspacing="0" cellpadding="0" align="right">
        <tr>
            <td style="padding-left:10px; padding-bottom:5px;">
                <a href="../1.jpg" target="_blank" onfocus='this.blur()'>
                    <img src="../pic1/small_16239927831.jpg" width="300" >
                </a>
            </td>
        </tr>
    </table>
    AAA<br><br>
    BBB<br><br>
    CCC<br>
</font>
 

Я могу получить некоторый результат с помощью этого

 response.xpath('//font[@class="body_news"]/text()')
 

или

 response.xpath('//font[@class="body_news"]/text()').extract()
 

Однако в результате есть много n или nt , я просто хочу получить "AAA BBB CCC" или ['AAA','BBB','CCC'] .

Я тоже пользовался normalize-space() , но не работает. Как я могу исключить эти новые строки или вкладки?

 ['AAA', 'ntt', 'nntt', 'BBB', 'ntt', 'CCC', 'nt' ]
 

Комментарии:

1. Ваш вопрос плохо отформатирован. Нормализованное пространство должно выполнить эту работу. Не могли бы вы поделиться исходным html-кодом?

Ответ №1:

Этот XPath:

 normalize-space(//font[@class='news'])
 

дает такой результат:

 AAA BBB CCC
 

Комментарии:

1. Это ответ на ваш вопрос?