Selenium 如果iframe没有';你没有名字或身份证吗?

Selenium 如果iframe没有';你没有名字或身份证吗?,selenium,selenium-webdriver,xpath,iframe,css-selectors,Selenium,Selenium Webdriver,Xpath,Iframe,Css Selectors,我正在制作一个selenium项目,作为其中的一部分,我需要登录到上的一个帐户。我注意到,当点击“登录”按钮时,它会切换到iframe。要求我对项目中的所有iFrame使用driver.switchTo().frame(),但我无法识别登录页面的id、名称或索引。我能在这里做什么? iframe与任何其他Web元素一样,可以通过id、类、标记、xpath、css等进行定位,而不仅仅是通过id进行定位。 因此,可以通过遵循css\u选择器iframe来定位iframe,因为它是该元素的唯一标记名

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

iframe
与任何其他Web元素一样,可以通过id、类、标记、xpath、css等进行定位,而不仅仅是通过id进行定位。
因此,可以通过遵循
css\u选择器
iframe
来定位
iframe
,因为它是该元素的唯一标记名

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

或者使用
//iframe
xpath
selectror

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)

那么,我应该为“frame()”提供什么作为参数呢?我已经编写了一整行代码,将驱动程序切换到您提到的iframe
frame()
接收webElement参数。这正是
driver.findelelement(By.cssSelector(“iframe”))
returnsYeah抱歉,我写这篇文章时代码还没有显示出来。页面仍然没有更改为登录框,但还是感谢您的回复:)那么,我们是否解决了您的问题?