如果没有名称或 ID,如何找到 iframe?

How can I find an iframe when it doesn't have a name or id?

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

iframe 就像任何其他网络元素一样,可以通过 id、class、标签、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")));

添加一些等待并检查 Python Selenium

中的代码片段
iframe = WebDriverWait(driver,2).until(EC.presence_of_element_located((By.CSS_SELECTOR, "body > div.login-modal > iframe")))
driver.switch_to.frame(iframe)