java之Selenium之无法在 [a link] http ://www. cartasi.it/gtwpages/index.jsp 上找到基于 CSS 元素的密码字段元素

findumars 阅读:35 2023-09-06 19:40:43 评论:0

我正在尝试从链接中查找密码字段元素 http://www.cartasi.it/gtwpages/index.jsp使用 CSS 选择器。以下是我用于其他网站的代码,除了提供的链接外,它适用于所有网站。

 pwd=driver.findElement(By.cssSelector("input[type='password']"))  

并检查了网站的源代码,但我没有在代码中找到任何 type="password"关键字。 我觉得发布整个网站的源代码会造成困惑,因此给出了引用链接。 是什么导致此密码被隐藏?如何使用 CSS 选择器定位元素?任何帮助将不胜感激

请您参考如下方法:

该页面上的密码字段位于 iframe 内:

<iframe width="254" height="120" frameborder="0" src="https://titolari.cartasi.it/portal/login/login.xhtml" marginheight="0" marginwidth="0" scrolling="no"> 
... 
<input id="loginForm:password" class="ui-inputfield ui-password ui-widget ui-state-default ui-corner-all" type="password" tabindex="2" placeholder="" name="loginForm:password" role="textbox" aria-disabled="false" aria-readonly="false"> 

因此您需要先切换到 iframe,然后再使用您的选择器:

driver.switchTo().defaultContent(); // make sure you are on main page 
driver.switchTo().frame( 
    driver.findElement(By.xpath("//iframe[contains(@src, 'login.xhtml')]"))); 
pwd=driver.findElement(By.cssSelector("input[type='password']"))  

当然,您可以将 xpath/选择方法更改为您喜欢的任何方式。


标签:CSS
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号