example docs login htmlunit

login - docs - htmlunit jar



ComprobaciĆ³n de inicio de sesiĆ³n utilizando HtmlUnit (3)

Hy ... quiero iniciar sesión en algunos sitios de terceros usando HtmlUnit. Pero HtmlUnit debería poder decirme si el intento de inicio de sesión en el sitio de entrada es exitoso o no. ¿Hay alguna forma de realizar esta tarea usando HtmlUnit? Por favor ayuda ..!!!

Gracias Usman Raza


Puede hacer que HtmlUnit verifique la URL o busque un elemento específico en la página, más precisamente uno que sepa que está presente solo en un caso (inicio de sesión / rechazo exitosos).


Actualmente estoy usando HTMLunit para iniciar sesión en un sitio que tiene una página de varificación y redirigir. parte de mi código para esto es:

//---------------------------------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"); //----------------------------------------------------------------

Este código va a una página de inicio de sesión, agrega nombre de usuario y contraseñas a los cuadros de texto, y hace clic en el botón Enviar. A continuación, se redirige a un tipo de página de "esperar 5 segundos o hacer clic aquí para continuar a la página de inicio", donde se hace clic en el botón Continuar. Finalmente llegamos a nuestra página de inicio en la que queríamos iniciar sesión. Seleccioné los elementos de página por ID y Xpath cuando no había ninguna identificación disponible.


Al igual que RabidFX sugirió, le sugiero que compruebe la URL, pero en algunos casos (he visto situaciones similares en mi experiencia laboral), la URL puede ser la misma. Entonces, mi sugerencia sería buscar un elemento específico y debería ser el formulario de inicio de sesión porque generalmente los intentos de inicio de sesión infructuosos lo redireccionan a la misma página que tiene el mismo formulario de inicio de sesión. Esa no sería una solución codificada porque espero que haya encontrado la manera de obtener ese formulario de inicio de sesión de manera genérica :)