java - tutorial - Cómo publicar datos en el sitio web con Jsoup
load html java (2)
Estoy tratando de PUBLICAR datos en el sitio web para iniciar sesión en el sitio usando Jsoup, pero no está funcionando?
Estoy intentando el código
Document docs = Jsoup.connect("http://some.com/login")
.data("cmd", "login","username", "xxxx","password", "yyyyy")
.referrer("http://some.com/login/").post();
aquí está dando la página normal de inicio de sesión en sourcesource
También probé el código
Document docs = (Document) Jsoup.connect("http://some.com/login")
.data("cmd", "login","username", "xxxx","password", "yyyyy")
.referrer("http://some.com/login/").method(Method.POST).execute().parse();
aquí también está dando la página normal de inicio de sesión nuevamente en sourcesource.
Cualquier sugerencia con respecto a la misma sería muy apreciada!
Gracias....
Daré la respuesta a tu pregunta tomando un ejemplo. Supongamos que desea iniciar sesión en Facebook.
Luego, aparte del nombre de usuario y la contraseña, hay muchos otros parámetros que también se pasan a través de la solicitud POST
. Esos parámetros están ocultos y se pasan de manera similar como nombre de usuario y contraseña. Por ejemplo :
Si abre la html source
de Facebook, entonces puede ver que hay un parámetro que está oculto es lgnrnd
y su valor es 071129_5D7M
.
Entonces hay muchos otros parámetros similares a esto. Debe pasar todos los parámetros. También debe especificar el userAgent.
Document doc = Jsoup.connect("http://www.facebook.com")
.data("email", "myemailid")
.data("pass", "mypassword")
// and other hidden fields which are being passed in post request.
.userAgent("Mozilla")
.post();
System.out.println(doc); // will print html source of homepage of facebook.
Si el problema es un redireccionamiento de JavaScript, puede intentar entrar en el javascript y verificar si la URL a la que redirige es estática, y luego usar la redirección para obtener acceso. Lo hice para acceder a una ventana emergente hecha por javascript una vez.