我想用selenium按下按钮,昨天我遇到了一个问题,我不能,结果发现我的按钮在一个iframe中,它环绕着整个网页。这解决了它:
from time import sleep
driver.switch_to.frame(driver.find_element_by_id("includedPage"))
sleep(10)
element = driver.find_element_by_xpath("//input[contains(@id, 'workbenchLst:j_id_id507') and @value='Add']")
element.click()
点击它之后,我想对之后页面上的其他按钮执行相同的操作,但我不能一直为iframe和页面中的所有其他元素获取Unable to locate element
(该页面在td中也有一个iframe,如下所示):
<td id="rightTdId">
<iframe id="includedPage" style="width:100%;" onload="reRenderReportLOV();;tickleSession('pageNavigation:sessionLink');disableContextMenu();showHidPanelMenu('hide','leftMenuj_id_1');" name="includedPage" src=".." marginheight="0" marginwidth="0" height="531" frameborder="0"></iframe>
</td>
我如何才能得到我的按钮在该页和禁用iframe的影响后,找到它?你知道吗
当您单击iframe并且需要返回到上一帧或默认帧时,您应该使用
driver.switch_to.default_content()
,然后您可以单击默认内容上的按钮。你知道吗这会将上下文切换到默认帧,并且您可以再次对其进行操作。你知道吗
如果两个按钮都属于不同的iframe,则必须将web驱动程序的焦点切换到父级,然后再次切换到第二个iframe。像这样:
相关问题 更多 >
编程相关推荐