我有一个iframe边栏,一旦窗口小部件悬停就会出现,因为它使用onchange javascript事件,并在再次单击侧边栏时隐藏。此侧栏中有一个列表框,需要单击该列表框才能继续使用我的链。如何在Python中编写Selenium webdriver来提取这个侧边栏?
由于
在阅读问题的答案时,我补充说: -
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]]' ;
这是我从Chrome复制的元素的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吗?
答案 0 :(得分:1)
from selenium.webdriver.common.action_chains import ActionChains
def hover_over_item(self):
driver = webdriver_connection.connection
element = driver.find_element_by_id(locator)
hover = ActionChains(driver).move_to_element(element)
hover.perform()