Как использовать execute_script в Python и Selen, чтобы выбрать значение из выпадающего списка - PullRequest
0 голосов
/ 16 марта 2019

У меня есть форма, элементы которой возвращают исключение elementnotinteractable, когда я использую операции селена, такие как click () и sen_keys.

Я использовал execute_script для взаимодействия с элементами, и он работает нормально.Однако я не могу выполнить операцию выбора из выпадающего списка.Мне нравится исполняемый сценарий, эквивалентный следующему утверждению -

path = ".//div[@id='web_service_dlg']//select[@name='tenancy']/option[@value='Customer Tenancy']"
self.browser.find_element_by_xpath(path).click()

Вышеприведенный оператор завершается неудачно с элементом исключения notinteractable Я пытаюсь решить проблему, выполнив следующее -

element = self.browser.find_element_by_xpath(".//div[@id='web_service_dlg']//select[@name='tenancy']/option[@value='Customer Tenancy']")
self.browser.execute_script("return arguments[0].scrollIntoView(true);", element)
self.browser.execute_script("return arguments[0].removeAttribute('onkeypress');", element)
self.browser.execute_script("return arguments[0].click();", element)

Вышеуказанный оператор не выполняетДайте мне любую ошибку, но это не выбор элемента, который я хочу.Что я делаю не так?

1 Ответ

0 голосов
/ 16 марта 2019

Пользователь selected=true.

self.browser.execute_script("return arguments[0].selected=true;", element)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...