Xpath |как узнать, есть ли у текущего узла определенный класс или нет - PullRequest
0 голосов
/ 30 мая 2018

Я извлекаю данные с помощью скрапа.Я нахожусь на узле, получающем информацию о размерах, основываясь на классах, я должен отмечать этот размер или нет.Я пытался с этим:

if size.xpath('./not([@class="sch-avaiable"])'):
            dictionary['out_of_stock'] = True

Насколько я понимаю, размер является указанием на текущий узел, и если я использую '.'это означает текущий узел, поэтому приведенное выше выражение вернет текущий узел, если в нем нет класса sch-available.

Как использовать Xpath, чтобы узнать, имеет ли текущий узел определенный класс или нет?

1 Ответ

0 голосов
/ 30 мая 2018

правильный ответ

if size.xpath('self::*[not(contains(@class, "sch-avaiable"))]').extract()

этот самоотчет :: работал

...