2017-03-17 54 views
0

我应该如何在循环中使用sendKeys?第一次sendKeys工作正常,但第二次,在新的页面 - 例外。selenium web driver sendKe in a loop java

public class main { 
     public static void main(String args[]) throws Exception{ 
      System.setProperty("webdriver.gecko.driver", "C:\\Users\\asdasd\\Desktop\\geckodriver.exe"); 
      WebDriver driver = new FirefoxDriver(); 
      driver.get("http://www.kommersant.ru"); 
      Scanner scanner = new Scanner(System.in); 
      while(true) { 
       WebElement search = driver.findElement(By.cssSelector(".search__input")); 
       // WebElement searchButton = driver.findElement(By.cssSelector(".search__button")); 
       String s = scanner.nextLine(); 

       if(s.equals("exit")){ 
        break; 
       } 
       else { 
        WebDriverWait wait = new WebDriverWait(driver, 10); 
        search.sendKeys(s); 
        WebElement searchButton = wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector(".search__button"))); 
        searchButton.click(); 
        searchButton.click(); 
       } 

      } 
      driver.quit(); 
     } 
    } 

First query hockey work correctly Second query footbal error

+0

请给我们一些关于你想达到什么的信息? – Mikhail

+0

您能否发布错误信息的实际文字?该屏幕截图无法在我的显示器上阅读。 –

回答

0

试图让你的循环状况火腿肠问题在于那里。

+0

以及如果你可以详细说明你正在尝试做什么,那么这将有所帮助。 –