Найти более одного x_path для моего веб-скребка (Python, Selenium) - PullRequest
0 голосов
/ 28 февраля 2019

Элементы на веб-странице, которую я очищаю, находятся по одному из двух x_path, хотя элементы почти одинаковы.По сути, некоторые элементы имеют значок рядом с ними, а некоторые нет.Но меня не интересует значок, я просто собираю числа рядом с ним.

Для данных со значком, который я использую:

driver.find_elements_by_xpath('//a[@class="in-match"]')

Для данных без значка:Я использую:

driver.find_elements_by_xpath('//td[@class="table-main__detail-odds table-main__detail-odds--first"]')

Мне нужен мой скребок, чтобы можно было найти любую из этих двух вещей.Важно, чтобы он одновременно искал их, чтобы порядок сортировки совпадал с порядком, в котором данные появляются на странице.

Это кажется простым вопросом, но я действительно не уверен, каксделай это.

Спасибо.

1 Ответ

0 голосов
/ 28 февраля 2019

Вы можете использовать условие or в вашем XPath, чтобы соответствовать обоим условиям, как показано ниже:

locator = '//a[@class="in-match" or @class="table-main__detail-odds table- main__detail-odds--first"]'
driver.find_elements_by_xpath(locator)

Это будет соответствовать элементам с class.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...