Scrapy - xpath с регулярным выражением - PullRequest
0 голосов
/ 26 июня 2019

Я очищаю страницу с несколькими элементами div с id = Content_Main_ с некоторым случайным числом, но не могу получить их содержимое, используя следующий xpath, потому что результат всегда пуст, что я делаю неправильно?

//div[re:test(@id, '([Content_Main_]+\d{5}[0-9])')]

/div[@id='Content_Main_4']
/div[@id='Content_Main_5']
/div[@id='Content_Main_8']

Ответы [ 2 ]

0 голосов
/ 26 июня 2019

Вы ищете ровно пять цифр после текста (Content_Main_) \ d {5} - Пример поиска из 5 цифр: 12345; 76543 ....

сделать так: \ d - если это всегда одна цифра или же \ d + - если он может иметь одну или несколько цифр или же \ d * - может иметь / не иметь цифру

0 голосов
/ 26 июня 2019

Я думаю, вам нужно что-то вроде (начиная с Content_Main_ и далее digit):

//div[re:test(@id, 'Content_Main_\d+')]

ОБНОВЛЕНИЕ Чтобы выбрать div s, заканчивающийся номером, который вынужно:

//div[re:test(@id, 'Content_Main_\d+$')]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...