[vb.net]Gestione login e pagine web

martedì 03 agosto 2010 - 20.53
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  Windows XP  |  Visual Studio Express

cleaner Profilo | Newbie

ciao a tutti, come posso gestire tramite vb.net il login ha un sito web??
mi spiego meglio:
nella mia applicazione dovrei poter fare il login a questa pagina web
https://intra.euteliavoip.com/cgi-bin/wbc_skplogin?wc_dbos=&wc_retpath=wbc_skpdetails
e successivamente recuperare alcune informazioni all'interno della pagina a cui si è rindirizzati.

grazie!

Fako Profilo | Newbie

Ciao,
è abbastanza complicato ma si può fare.
Per esempio avevo fatto un prog. che inseriva i dati di user e pwd nelle textbox del mio provider di posta e poi sempre in automatico premevo il pulsante passavo alla pagina successiva.
Per scrivere nella textbox ho utilizzato:
webBrowser.Document.GetElementById("email").InnerText = user_email
dove l'element "email" era il textbox dove si mettva l'username
webBrowser.Document.GetElementById("password").InnerText = password_email;
analogo a prima.
Per la pressione del pulsante di login ho fatto così:
HtmlElement check;
check = webBrowser.Document.GetElementById("nueva_ventana");
check.InvokeMember("Click");
ho invocato l'evento click del pulsante

e il mio webbrowser ha cambiato pagina.


cleaner Profilo | Newbie

mm.. ok, quindi ad esempio nel mio caso specifico, leggo dal sorgente della pagina:

<td>Login</td><td><input name="wc_login" type="text" maxlength="50" size="30"></td> </tr> <tr> <td>Password</td><td><input name="wc_password" type="password" maxlength="20" size="30"></td> </tr> </table>

quindi le mie due textbox avranno come nome degli elementi wc_login e wc_password

per simulare invece il pulsante di submit, sempre da codice leggo:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

nel mio caso specifico dovrò scatenare l'evento Onclick giusto? e su questo immagino che verrà richiamato window.document.logonuser ecc..
Nel tuo esempio poi avevi da gestire anche dei cookie?
adesso devo studiarmi ancora il controllo webBrowser, ad ogni modo penso che dopo il login mi terrà in cache le credenziali, giusto?
grazie mille!!

Fako Profilo | Newbie

Ciao,
premesso che non ho approfondito più di tanto ti dico che l'attività svolta da questa compilazione automatica è tipo una simulazione dell'user che compila i campi e preme i button (vedi in parte animarsi la compilazione) quindi immagino che cookies sessioni e altro vengano gestiti normalmente.
dovresti usare getelementbyname ( webBrowser.Document.GetElementsByTagName) perchè non hai l'ID nei controlli.
Poi scateni l'evento che appartiene al controllo che vuoi utilizzare se fai come me definisci un HtmlElement button
poi provi ad invocare click. Se non è un button non saprei dovresti provare ad enumerare i suoi metodi.
per il BUTTON è:

HtmlElement btn;
btn=webBrowser.Document.GetElementsByTagName("nome");
btn.InvokeMember("Click");


Così dovrebbe andare.
Ciao,

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5