【问题标题】:Need to find element in selenium需要在硒中找到元素
【发布时间】:2021-02-14 15:16:00
【问题描述】:

我想找到这些输入的元素:“Email”和“Mot de passe”来填充它的下一个。 任何帮助将不胜感激 这是网址:https://www.geev.com/fr/login/local

我试过这些,但不适合我:

List<WebElement> someElements = driver.findElements(By.xpath("//input[contains(@class, 'view-login-form-password-input ng-untouched ng-pristine ng-invalid')]"));

List<WebElement> someElements = driver.findElements(By.cssSelector(".view-login-form-password-input.ng-untouched.ng-pristine.ng-invalid")); 

List<WebElement> someElements = driver.findElements(By.className("input.view-login-form-password-input ng-untouched ng-pristine ng-invalid"));

    for (WebElement anElement : someElements) {
        if (anElement.getAttribute("type").equals("email")) {
            // Do something
            anElement.sendKeys("");         }
    }

编辑 1:

感谢@wp78de 的建议,仅此一项有效,但不幸的是,它指的是搜索输入,而不是“电子邮件”和“Mot de passe”输入

WebElement anElement = driver.findElement(By.xpath("//*/form[1]/input[1]"));

后来我为我的第二种形式尝试了这个,但没有用:(

WebElement anElement = driver.findElement(By.xpath("//*/form[2]/input[1]"));

【问题讨论】:

  • //*/form[1]/input[1]//*/form[1]/div[1]/input[1] 和按钮 //body/div[2]/iframe[1] 怎么样。
  • @wp78de 感谢您的帮助,我仅尝试了您的建议 //*/form[1]/input[1],有效,但不幸的是它指的是搜索输入而不是“电子邮件”和“Mot de passe”输入

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


【解决方案1】:

要发送到电子邮件并传递,请使用以下内容。

WebElement userName = driver.findElement(By.cssSelector("input[type='email']"));
userName.sendKeys("Username");
WebElement passWord = driver.findElement(By.cssSelector("input[type='password']"));
passWord.sendKeys("Pass");

后来我用过。

driver.get("https://www.geev.com/fr/login/local");
driver.manage().window().maximize(); 
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);    

【讨论】:

  • 感谢您的回答,但我以前使用过,但它不起作用:(
  • 在我的工作上你是否在寻找元素之前等待。
  • 让我的驱动器等待 10 秒后,它也能和我一起工作,真是太棒了
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-08-17
  • 2020-08-17
  • 1970-01-01
相关资源
最近更新 更多