Проверка входа с помощью HtmlUnit - PullRequest
6 голосов
/ 04 мая 2011

Hy ... я хочу войти на некоторые сторонние сайты, используя HtmlUnit.Но HtmlUnit должен быть в состоянии сказать мне, успешна ли попытка входа на сайт ввода или нет.Есть ли способ обойти эту задачу с помощью HtmlUnit.Пожалуйста, помогите .. !!!

Спасибо Усман Раза

Ответы [ 3 ]

5 голосов
/ 27 июня 2011

В настоящее время я использую HTMLunit для входа на сайт с страницей изменений и перенаправления. часть моего кода для этого:

//---------------------------------Login Page---------------------------------

HtmlPage PageLogin = webClient.getPage(url);
HtmlElement submitButton = (HtmlElement) PageLogin.getByXPath(Xpath To Button).get(0);
HtmlTextInput name = (HtmlTextInput) PageLogin.getElementById("UserIdInput");
HtmlPasswordInput pass = (HtmlPasswordInput)PageLogin.getElementById("ADloginPasswordInput");

    name.setText(username);
    pass.setText(password);

    System.out.println("Logging in to site");
    //------------------------------------------------------------------------

   //---------------------------------Pass varified Page----------------------
    HtmlPage pagePassVarified = submitButton.click();
    System.out.println("Successfully Logged in to site");
    HtmlElement btnContinue = (HtmlElement) pagePassVarified.getElementById("BtnClickToContinue");
    //---------------------------------------------------------

    //---------------------Home Page----------------------------------
    HtmlPage pageHome = btnContinue.click();
    System.out.println("Home Page accessed");
    //----------------------------------------------------------------

Этот код переходит на страницу входа, добавляет имя пользователя и пароли в текстовые поля и нажимает кнопку отправки. Затем мы перенаправляемся на страницу типа «подождите 5 секунд или нажмите здесь, чтобы перейти на домашнюю страницу», где нажимается кнопка «Продолжить». Наконец мы попадаем на нашу домашнюю страницу, на которую мы хотели войти. Я выбрал элементы страницы по идентификатору и Xpath, когда идентификатор не был доступен.

1 голос
/ 04 мая 2011

HtmlUnit может проверить URL-адрес или выполнить поиск определенного элемента на странице, точнее, такого, который, как вы знаете, присутствует только в одном случае (успешный вход в систему / отклонен).

0 голосов
/ 17 августа 2011

Как и предложил RabidFX, я бы посоветовал вам проверить URL, но в некоторых случаях (я видел такие ситуации в моем опыте работы) URL может оставаться прежним.Затем мое предложение будет проверять определенный элемент, и это должна быть форма входа в систему, потому что, как правило, неудачные попытки входа перенаправляют вас на ту же страницу, которая имеет ту же форму входа.Это не было бы жестко закодированным решением, потому что я надеюсь, что вы нашли способ получить эту форму входа с помощью общего способа:)

...