Таблица данных не загружается в Selenium после нажатия на кнопку отправки формы - PullRequest
0 голосов
/ 03 апреля 2020

В этом URL: https://www1.nseindia.com/products/content/derivatives/equities/historical_fo.htm

Я пытаюсь получить данные после ввода значений в Selenium.

Что я должен получить (Руководство Вывод): Desired output, as table

Что я на самом деле получаю (с помощью Selenium Automation), белая коробка без данных: the table does not load, I'm only getting a white box which pops up when submit is clicked on

Мой код:

Select instrument = new Select(driver.findElement(By.xpath("//select[@name='instrumentType']")));
        Select symbol = new Select(driver.findElement(By.xpath("//select[@name='symbol']")));
        Select year = new Select(driver.findElement(By.xpath("//select[@name='year']")));
        Select expiryDate = new Select(driver.findElement(By.xpath("//select[@name='expiryDate']")));
        Select optionType = new Select(driver.findElement(By.xpath("//select[@name='optionType']")));
 instrument.selectByVisibleText("Index Options");
        symbol.selectByVisibleText("BANK NIFTY");
        optionType.selectByVisibleText("PE");
        year.selectByVisibleText("2016");

В приведенных выше строках я выбираю каждый раскрывающийся список и устанавливаю значение для раскрывающихся списков

Thread.sleep(3000); // ожидание 3000 миллисекунд

    driver.findElement(By.xpath("//input[@id='strikePrice']")).sendKeys(""+strikePr);

введите цену исполнения в текстовом вводе

    driver.findElement(By.xpath("//input[@id='rdDateToDate']")).click(); 

// выберите переключатель для выбора диапазона дат для таблицы

    expiryDate.selectByVisibleText("09-06-2016");
    sleepTime(3000);
    try {

        (By.xpath("//input[@id='fromDate']"))
        .sendKeys(DaysBefore.DaysBeforestring("09-06-2016", 2));} catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    try {
        driver.findElement
        (By.xpath("//input[@id='toDate']"))
        .sendKeys(DaysBefore.DaysBeforestring("09-06-2016", 1))
            } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

// функция для возврата предыдущей даты в виде строки. здесь мы принимаем T-2 как дату начала, а T-1 как дату

    sleepTime(3000);

    driver.findElement(By.xpath("//*[@id='getButton']")).click(); } sleepTime(3000);
    }

// нажимаем на форму для отправки данных. попытался также использовать функцию submit (), тот же результат. стол не поднимается при автоматизации

...