У меня есть панель iframe-sidebar, которая появляется, как только виджет зависнет, поскольку он использует событие onchange javascript и скрывается, когда боковая панель снова нажата. В этой боковой панели есть список, который нужно нажать, чтобы моя цепочка продолжалась. Как мне настроить Selenium webdriver на Python, чтобы вытащить эту боковую панель?Как сделать Selenium вытащить дерево меню боковой панели
Благодаря
На чтение ответов на вопрос, я добавил это: -
element = driver.find_element_by_xpath('//*[@id="leftSiderBarForm:moduleMenu"]')
element = driver.find_element_by_id("leftSiderBarForm:moduleMenu")
hover = ActionChains(driver).move_to_element(element)
hover.perform()
но получить сообщение об ошибке: -
MoveTargetOutOfBoundsException: Message: u'Offset within element cannot be scrolled into view: (72.5, 8.5): [object XrayWrapper [object HTMLSelectElement]]' ;
Это HTML этого элемента, что я скопированной из Хром. Я изменил фактические значения на ABC и так далее.
<select id="leftSiderBarForm:moduleMenu" name="leftSiderBarForm:moduleMenu" class="comboboxnowidth leftSideMenuSelect " size="1" onchange="jQuery('.submitMenuSelection').click()" style="z-index: 0;"> <option value="">-- Select --</option>
<option value="ABC">abc</option>
<option value="DEF">def</option>
Может я использовать JavaScript, чтобы вызвать что Jquery?
Я думаю, что вы можете использовать класс действия парить над виджетом, а затем выполнить операцию щелкните на боковой панели, как элемент будет виден. – Vinay