Selenium - Python - Как выбрать опцию выпадающего по части текста

Я пытаюсь выбрать опцию выпадающего по части текста.

Как я обычно выбираю текст:

Выбрать (browser.find_element_by_css_selector('selector')). Select_by_visible_text("элемент text")

Что я пытаюсь сделать:

Выбрать (browser.find_element_by_css_selector('selector')). Select_by_partial_visible_text("элемент text")

2 ответа

Я не думаю, что вы можете сделать это с помощью выбора с помощью CSS. С xpath я думаю, что вы можете сделать это примерно так, но вы должны изменить его на свой xpath:

driver.find_elements_by_xpath("//*[contains(text(), 'yourText')]")

Есть ли селектор CSS для элементов, содержащих определенный текст?

Может быть, используя язык xpath? Допустим, вы знаете идентификатор объекта или другое свойство, это может быть что-то вроде:

def select_option(element_text):
    xpath = '//select[@id=id]//option[contains(text(),' + element_text + ')]'
    driver.find_element_by_xpath(xpath)
Другие вопросы по тегам