ChromeDriver找不到要单击的元素

时间:2019-04-01 16:07:09

标签: java webdriver instagram

Chrome-WebDriver在Instagram登录页面上找不到log in按钮。我已经尝试了3ways(请参见下面的代码),并且在所有方面均未单击按钮。非常感谢您的帮助!

代码:

    System.setProperty("webdriver.chrome.driver","F:\\scraper - by 
    Url\\chromedriver.exe");

    ChromeDriver driver = new ChromeDriver();


    driver.get("https://www.instagram.com/accounts/login/?hl=en");
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    driver.findElement(By.name("username")).sendKeys("username");
    driver.findElement(By.name("password")).sendKeys("testtest");

    //driver.findElements(By.tagName("button")).get(1).click();

    WebDriverWait wait = new WebDriverWait(driver, 10);

    WebElement button = 

wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//button[.='Log in']")));
    button.click();

    //driver.findElement(By.xpath("//button[.='Log in']")).click();
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

1 个答案:

答案 0 :(得分:2)

您在xpath中犯了一个小错误,您在小写字母中使用了i中的Log in,但是在页面上,单词是驼峰式的,因此您需要使用{{ 1}}

您可以将以下xpath用于Log In按钮:

Login