2016-09-18 2 views
1

Как я могу получить элемент в этом конкретном месте:Scrapy SgmlLinkExtractor как скрести Li теги с изменением идентификаторов

Check picture

XPath является:

//*[@id="id316"]/span[2] 

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

zimmer = response.xpath('//*[@id="id316"]/span[2]').extract()

Однако я ничего, кроме пустой строки не получаю. Я узнал, что значение id различно для каждого элемента в интересующем меня списке. Есть ли способ написать это выражение, чтобы он работал для общих чисел?

ответ

0

Используйте соответствующую метку и получить following sibling элемент, содержащий значение:

//span[. = 'Zimmer']/following-sibling::span/text() 

И, обратите внимание, бонус к читаемости локатора.

+0

Работает отлично ... – hjschmid

Смежные вопросы