当 iframe 没有名称或 ID 时,如何找到它?

时间:2021-05-16 13:02:01

标签: selenium selenium-webdriver xpath iframe css-selectors

我正在制作一个 selenium 项目,作为其中的一部分,我需要在 www.allmovie.com 上登录一个帐户。我注意到当点击“登录”按钮时,它会切换到 iframe。要求我对项目中的所有 driver.switchTo().frame() 使用 iframes,但我无法识别登录页面的 id、名称或索引。我可以在这里做什么?
login page image

1 个答案:

答案 0 :(得分:0)

iframe 像任何其他 webelement 一样可以通过 id、class、tag、xpath、css 等来定位,而不仅仅是通过 id。
这样可以通过跟随 iframe css_selector 来定位 iframe,因为它是该元素的唯一标记名称。

driver.switchTo().frame(driver.findElement(By.cssSelector("iframe")));

或者使用 //iframe xpath 选择器。

driver.switchTo().frame(driver.findElement(By.xpath("//iframe")));