Python-selenium iframe开关似乎不起作用

时间:2018-05-24 11:25:42

标签: python selenium iframe

我正在使用selenium(python 2.7.12,selenium 3.8.0)的python绑定,以便从网页中选择iframe。但这似乎不起作用。这是一个示例代码:

driver.get("http://jsfiddle.net/westonruter/6mSuK/")
print(driver.title)
elem = driver.find_element(By.XPATH, '//iframe[@name="result"]')
driver.switch_to_frame(elem)
print(driver.title)

我正在使用一些测试页面,其中包含iframe。我尝试更改为此iframe,并期望第二次打印输出为HTTPS iframe test by westonruter以验证我切换到正确的iframe ),但我再次得到相同的输出:< / p>

HTTPS iframe test - JSFiddle
HTTPS iframe test - JSFiddle

这里出了什么问题?为什么硒不会“切换”?到选定的iframe?

2 个答案:

答案 0 :(得分:1)

Switch工作正常,但切换到title后获得iframe值可能需要

title = driver.find_element_by_tag_name('title').get_attribute('textContent')

输出为'HTTPS iframe test by westonruter'

答案 1 :(得分:0)

driver.title()仍将返回浏览器的标题。

尝试elem.get_attribute('name')获取帧名称。 如果driver.switch_to_frame(elem)没有返回任何异常,那么它会正确切换到框架。