在web页面中经常使用frame/iframe表单嵌套页面的应用,webdriver只能在一个页面上定位元素,对于frame/iframe这样的内嵌式页面,webdriver无法直接定位到相应的元素,需要通过switch_to.frame()方法将目前定位的主体切换到frame/iframe表单的内嵌页面上。
switch_to.frame("id/name"),该方法默认去表单的id或name进行定位。如果没有id/name,可以通过以下方式进行定位:
cf = driver.find_element_by_xpath("")#也可以通过其他定位方式定位该frame/iframe
driver.switch_to.frame(cf)
driver.switch_to.parent_content()方法跳出当前一级表单,该方法默认对应于离它最近的switch_to.frame()方法。
driver.switch_to.default_content()方法默认跳回最外层的页面。