Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium 无法在Google的输入框中写入';由WebDriver创建的网站主页_Selenium_Xpath - Fatal编程技术网

Selenium 无法在Google的输入框中写入';由WebDriver创建的网站主页

Selenium 无法在Google的输入框中写入';由WebDriver创建的网站主页,selenium,xpath,Selenium,Xpath,我想发送使用xpath作为定位器的消息。 错误: 线程“main”中出现异常 org.openqa.selenium.InvalidElementStateException:元素已禁用 因此不能用于操作命令持续时间或超时:75 毫秒 之后,我想打印谷歌建议。如果您试图通过ID访问谷歌搜索栏,请尝试此ID://*[@ID='lst-ib'] WebDriver driver = new FirefoxDriver(); driver.get("http://www.google.co.i

我想发送使用xpath作为定位器的消息。 错误:

线程“main”中出现异常 org.openqa.selenium.InvalidElementStateException:元素已禁用 因此不能用于操作命令持续时间或超时:75 毫秒


之后,我想打印谷歌建议。

如果您试图通过ID访问谷歌搜索栏,请尝试此ID://*[@ID='lst-ib']

WebDriver driver = new FirefoxDriver();
    driver.get("http://www.google.co.in");
    driver.findElement(By.xpath("//*[@id='gs_htif0']"))
            .sendKeys("selenium");
您也可以尝试以下方法:

driver.findElement(By.xpath("//*[@id='gs_htif0']"))
            .sendKeys("selenium");

要获得建议,您可以尝试以下方法:

python: driver.find_element_by_xpath("//*[@name='q']").send_keys('selenium')
java: driver.findElement(By.xpath("//*[@name='q']")).sendKeys("selenium");
List rows=driver.findElements(By.xpath(“/*[@role='option']);

对于(int i=0;i您试图通过ID访问google搜索栏,请尝试以下ID://*[@ID='lst-ib']

WebDriver driver = new FirefoxDriver();
    driver.get("http://www.google.co.in");
    driver.findElement(By.xpath("//*[@id='gs_htif0']"))
            .sendKeys("selenium");
您也可以尝试以下方法:

driver.findElement(By.xpath("//*[@id='gs_htif0']"))
            .sendKeys("selenium");

要获得建议,您可以尝试以下方法:

python: driver.find_element_by_xpath("//*[@name='q']").send_keys('selenium')
java: driver.findElement(By.xpath("//*[@name='q']")).sendKeys("selenium");
List rows=driver.findElements(By.xpath(“/*[@role='option']);

对于(inti=0;i您可以尝试使用name而不是XPATH。name选择器比XPATH快

  List<WebElement> rows = driver.findElements(By.xpath("//*[@role='option']"));
            for (int i=0; i<rows.size(); i++){
                System.out.println(rows.get(i).getText());
            }

您可以尝试使用名称而不是XPATH。名称选择器比XPATH快

  List<WebElement> rows = driver.findElements(By.xpath("//*[@role='option']"));
            for (int i=0; i<rows.size(); i++){
                System.out.println(rows.get(i).getText());
            }

首先在输入框中单击,然后使用.sendKeys(“您想键入的内容”)

首先在输入框中单击,然后使用.sendKeys(“您想键入的内容”)

但是我需要的是处理Ajax。这只能通过id实现,因为它每次都在更改。并且/*[@id='gs\u htif0']输入框的Xpath不是每次都更改。在此之后,对于所有建议,它的Xpath都会更改,如//*[@id='gs\u htif1'],//*[@id='gs\u htif2']@DJ开发者-你的第一个问题是-你无法写入输入框。这可以通过使用正确的id或名称来解决。你评论说它有效!你频繁的编辑/删除评论让事情变得混乱:)抱歉@chandan,是的,它在我能够写入输入框时起作用。但是当我想使用一种叫做“AJAX”的东西时,它就不起作用了。你对此有什么解决方案吗?上面的代码对我不起作用。@DJ developer,你想做的是什么场景?一个带有适当信息的新问题将是解决问题的正确方法o、 但我需要的是处理Ajax。这只能通过id实现,因为它每次都在更改。并且//*[@id='gs\u htif0']输入框的Xpath并不是每次都在更改。在这之后,对于所有建议,它都会像//*[@id='gs\u htif1'],//*[@id='gs\u htif2']@DJ开发者-你的第一个问题是-你无法写入输入框。这可以通过使用正确的id或名称来解决。你评论说它有效!你频繁的编辑/删除评论使事情变得混乱:)抱歉@chandan,是的,它有效,因为我能够写入输入框。但是当我想使用一种叫做“AJAX”的东西时,它就不起作用了。你有什么解决方案吗?上面的代码对我不起作用。@DJ developer,你想做什么场景?一个带有适当信息的新问题将是正确的方法。