Я пытаюсь заполнить несколько форм, которые следуют друг за другом, все формы заполняются быстро, без ошибок, потому что я обязательно добавлю
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.elementToBeClickable(By.xpath("")));
, прежде чем делать что-либо на новой странице, и я знаю, что я на правильной странице.
В последней форме я сталкиваюсь с этой ошибкой:
Exception in thread "main" org.openqa.selenium.NoSuchElementException: Unable to locate element: //*[@id="formtovalidate"]/fieldset[1]/div/label/input For documentation on this error, please visit: https://www.seleniumhq.org/exceptions/no_such_element.html
Поэтому я пошел проверить браузер, сделав снимок экрана и браузер находится на правильной странице с правильной формой, я также проверил значения xpath и даже попробовал другие атрибуты ... похоже, ничего не работает.
Так что я пошел дальше и распечатал PageSource, который показал совершенно другую страницу (не на предыдущей странице), я также заметил, что эта страница мигала за секунду до появления окончательной формы.
Я также пытался driver.navigate().refresh()
, но это не сработало. Я продолжал искать и искать, но ничего не появилось. Я также изменил браузеры, которые ничего не делали ..
Этот метод я пытаюсь выполнить:
private void method() {
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//*[@id=\"formtovalidate\"]/fieldset[1]/div/label/input")));
driver.findElement(By.xpath("//*[@id=\"formtovalidate\"]/fieldset[1]/div/label/input")).sendKeys(email); }
Обновление
Вот скриншот формы :
Вот результаты выполнения:
Код:
String body_text = driver.findElement(By.tagName("body")).getText();
System.out.println(body_text);
Результат: Форма, но в тексте
Код:
String body_innerHTML = driver.findElement(By.tagName("body")).getAttribute("innerHTML");
System.out.println(body_innerHTML);
Результат: Другая страница: (
<zendesk-ticketing-form base-url="https://www.runescape.com/a=870/c=K0aO9WO69EI" css-cachebust="129" sitekey="6Lcsv3oUAAAAAGFhlKrkRb029OHio098bbeyi_Hv" grecaptcha="" has-valid-session="true" weblogin-url="https://secure.runescape.com/m=weblogin/a=870/c=K0aO9WO69EI/loginform?mod=www&ssl=1&dest=zendesk/support-form?form=360000065898">
<div class="x-display-none ie-error-display" data-js-ie-error="">
<section class="c-article">
<div class="c-article__content">
<h1>Error: Unsupported Browser</h1>
<p>
We do not support your web browser. Please use a supported web browser by choosing one below.
<br>
<a href="https://www.mozilla.org/firefox/" target="_blank" rel="noopener">FireFox</a>
<br>
<a href="https://www.google.com/chrome/" target="_blank" rel="noopener">Chrome</a>
</p>
</div>
</section>
</div>
Код:
String pagesource = driver.getPageSource();
System.out.println(pagesource);
Результат: То же, что и предыдущий .. другая страница ..
Firefox Источник страницы: https://pastebin.com/Kv15V2SK
Firefox Проверка элемента скриншот страницы: http://prntscr.com/qvi6hc
Это странно, так как источник страницы отличается от формы!