硒等待并使用nodejs单击

时间:2019-10-02 18:05:51

标签: node.js selenium

我正在尝试登录FIFA终极团队...但是我不知道为什么我要尝试使用click操作没有任何好处... 基本上我的网址是https://www.easports.com/fifa/ultimate-team/web-app/ 我需要单击的按钮是“登录” 有什么主意吗?

require('chromedriver');
const webdriver = require('selenium-webdriver');

var until = webdriver.until;
var By = webdriver.By;

async function myMain(){

    let driver = new webdriver.Builder().forBrowser('chrome').build();
    await driver.get('https://www.easports.com/fifa/ultimate-team/web-app/');
    await driver.wait(until.elementLocated(By.className('btn-standard call-to-action')), 15000);
    await driver.findElement(By.className('btn-standard call-to-action')).click();
}

myMain();

1 个答案:

答案 0 :(得分:0)

您的选择器可能不太正确。试试这个:

  await driver.wait(until.elementLocated(By.xpath("//button[text()='Login']")),15000);
  let loginButton = driver.findElement(By.xpath("//button[text()='Login']"));

  await driver.wait(until.elementIsEnabled(loginButton ,15000));

  await driver.findElement(By.xpath("//button[text()='Login']")).click();