java - Selenium Webdriver - 无法使用 css 或 xpath 进行搜索,但可以使用 'by id' 或 'by class' 进行搜索

标签 java css selenium xpath

我正在使用 Eclipse Mars 和 JDK 1.8。我写了以下代码:

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

public class test1 {
    public static void main(String[] args) {

System.setProperty("webdriver.chrome.driver", "D://chromedriver.exe");
WebDriver d1=new ChromeDriver();
WebElement e1; 
d1.get("https://www.google.co.in/");

现在下面的行完美执行:

e1=d1.findElement(By.id("lst-ib"));

但是,如果我像下面这样使用 css 或 xpath 进行搜索,则不会产生任何结果。

e1=d1.findElement(By.cssSelector("input[class='gsfi'][name='q'][id='lst-ib']"));

e1=d1.findElement(By.xpath("input[@class='gsfi'][@name='q'][@id='lst-ib']"));

最佳答案

将它用于 xpath :

 d1.findElement(By.xpath("//*[@id=\"lst-ib\"]"))

将其用于 css 选择器:

d1.findElement(By.cssSelector("input#lst-ib.gsfi"))

关于java - Selenium Webdriver - 无法使用 css 或 xpath 进行搜索,但可以使用 'by id' 或 'by class' 进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37149284/

相关文章:

java - 如果 double 是整数,不显示小数?

java - ArrayList 的默认大小

java - 对象锁定私有(private)类(class)成员 - 最佳实践? ( java )

javascript - 网站优化 - 压缩 .JS/.CSS 文件

java - 无法找到位于框架内且靠近网络表的网络

python - 使用 headless Chrome 通过 Python 为 Selenium 禁用代理

java - @XmlElementRef - 用于请求和响应的 JAXBElement 包装器

html - MVC 打印分页符不起作用,内容被切断

html - 使导航菜单始终正确显示,内容不会溢出

javascript - 在 selenium python 中执行脚本