gpt4 book ai didi

java - driver.findElement(By.cssSelector(..)) Selenium 在Windows 10中不起作用

转载 作者:行者123 更新时间:2023-12-03 09:03:22 25 4
gpt4 key购买 nike

我在Seleniumwindows 10中的CSS选择器遇到问题。标签似乎不正确。而且,我不确定这是怎么回事。你能帮忙吗?

import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.By.ById;
import org.openqa.selenium.By.ByXPath;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;

public class Locator2 {

public static void main(String[] args) {

System.setProperty("webdriver.chrome.driver","C:\\Users\\abhij\\Desktop\\seliniumjars\\chromedriver.exe");

WebDriver driver=new ChromeDriver();
driver.get("https://login.yahoo.com/?.src=ym&.intl=us&.lang=en- US&.done=https%3a//mail.yahoo.com");
driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS);
//driver.findElement(By.xpath(".//*[@id='login-username']")).sendKeys("asdfasd");
driver.findElement(By.cssSelector("input[id='login-username']]")).sendKeys("asdfasd");

//driver.findElement(By.cssSelector("input[id='login1']")).sendKeys("asdfasd");
//driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS);
//driver.findElement(By.cssSelector("input[name='login1']")).sendKeys("asdfasd");
}
}
异常(exception):
>Exception in thread "main" org.openqa.selenium.InvalidElementStateException: invalid element state: Failed to execute 'querySelector' on 'Document': 'input[id='login-username']]' is not a valid selector

最佳答案

Exception in thread "main" org.openqa.selenium.InvalidElementStateException: invalid element state: Failed to execute 'querySelector' on 'Document': 'input[id='login-username']]' is not a valid selector



错误是绝对正确的,因为您的 cssSelector不正确,只需省略最后一个 ]方括号即可,请尝试以下操作:
driver.findElement(By.cssSelector("input[id='login-username']")).sendKeys("asdfasd");

您还可以使用 #id css selecter 通过 id使用 cssSelector属性值来定位元素,如下所示:-
driver.findElement(By.cssSelector("input#login-username")).sendKeys("asdfasd");

To learn more about css selector follow this reference
Selenium也可以直接使用元素的 id属性值来定位元素,因此您可以使用 By.id() 以及以下元素来定位该元素:
driver.findElement(By.id("login-username")).sendKeys("asdfasd");

关于java - driver.findElement(By.cssSelector(..)) Selenium 在Windows 10中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40072671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com